WordPressだけどZenbackを導入してみた

Movable TypeからWordPressに乗り換えた手前、恐縮ながらシックス・アパートさんのzenbackのベータテスターになってこのブログに導入してみました。

http://zenback.typepad.jp/blog/2010/07/zenback%E6%A6%82%E8%A6%81.html
zenbackはブログパーツです。ブログの記事の下や横に、

その記事に関係する自分のブログ記事
その記事に関係する他のzenbackユーザーのブログ記事(関連リンク)
その記事についての最新のTwitterのつぶやき
その記事についてのはてなブックマーク
その記事の最新のアクセス元(リファラ)
その記事にmixiチェックするボタン

を表示します。

ブログパーツというだけあって、scriptタグをブログの個別ページの表示したい位置に追加するという簡単仕様です。Movable Typeプラグインはあるようなので、じゃぁWordPressプラグインをつくるか。と思いましたが、あんまりプラグインにしてもうれしくないかもと思ったので需要があってもう少しヤル気がでたら対応します。

おとなしくテーマのテンプレートを編集する場合は comments.php の最初の方に

<php if (!is_preview() && (is_single() || is_page())):?>
<!-- X:S ZenBackWidget -->...<!-- X:E ZenBackWidget -->
<?php endif ?>

を追加すると良いでしょう。…のところはサイトによって違うのでZenbackのブログ管理ページにアクセスしてZenbackで取得したコードを追加してください。なんとなくプレビュー画面のURLで動くのは行儀がわるそうなのと確実に個別ページで動くように囲っています。

どの位置に追加すべきかどうかは本家ブログの 最適なZenback設置場所を画像でご紹介します が参考になります。

あと、関連記事の精度を上げる「zenbackタグ」に対応する場合

● 本文部分を「<!– zenback_body_begin –>」「<!– zenback_body_end –>」で囲む
● 記事公開日時を含んだタグ「<!– zenback_date YYYY-MM-DD –>」をどこかに追加する。

は単一記事の投稿(single.php)のthe_contentが呼ばれているところを探して

<!-- zenback_body_begin -->
<?php the_content(...); ?>
<!-- zenback_body_end -->
<!-- zenback_date <?php echo get_post_time('Y-m-d') ?> -->

というように変更すればよさそうです。

● 記事タイトル部分を「<!– zenback_title_begin –>」「<!– zenback_title_end –>」で囲む
※ブログのタイトルは含めずに、記事のタイトルだけを囲んでください

おそらく記事タイトルの認識としては<title></title>の部分が対象になっていると思われます。ただ通常<title></title>には「記事タイトル – ブログタイトル」のようになっていることが多いので、Zenbackのおっしゃるとおりにブログタイトルを省く場合には先ほどと同じく単一記事の投稿(single.php)のthe_titleが呼ばれているところを探して

<h2>
<!-- zenback_title_begin -->
<?php the_title(); ?>
<!-- zenback_title_end -->
</h2>

などとしてあげればよいでしょう。予想なんですが、ブログタイトルという余計な文章が入っていると記事タイトルの解析上、問題があるんでしょう。

なお、今回のように直接テーマのテンプレートを変更する場合は、テーマの更新によって変更が上書きされて消えてしまうおそれがあるので注意が必要です。