2010-07-19

コメント欄をにぎやかにするプラグイン Feedback Champru

WordPress のコメントエリアに Twitter でのツイート、ソーシャルブックマークでのブックマークコメントをまとめて表示させてくれるプラグイン。
このサイトはトラックバックもコメントもほとんどないので、コメント欄はとても寂しい状態

その寂しいコメント欄を少し賑やかにしてくれるのが Feedback Champru というプラグイン。

このプラグインは、おでさんと micc さんが Twitter 上でコメント欄でつぶやいていた悩みを、をかもとさんがプラグイン作ってサクっと解決!という経緯で作成されました。

現在対応しているサービスは、

PHP 5以降でないと使用できない関数を使用しているため、使用している PHP がバージョン5以前の場合使用できませんのでご注意ください。

当然ですが、ブックマークコメントが無いブックマークの場合はコメント欄に表示されません

プラグインの使い方は以下の通り。

  1. zip ファイルをダウンロード
  2. 解凍したファイルを plugins フォルダにアップロード
  3. プラグインの管理画面からプラグインを有効化

プラグインの設定

プラグインを有効化すると管理画面の設定に、「Feedback Champru」が追加され、ここからフィードバックの取得元を選択できるようになっています。

Feedback Champru 設定画面

管理画面でポチポチっとするだけで簡単に指定ができます。
<?php feedback_type(); ?> というタグも用意されています。

これら外部サービスのコメントにはそれぞれ、「tweet」、「hatena」、「delisious」という class が追加されるので、アイコンを自動で付けるなどの操作は CSS のみで対応できます。

クラスが追加されない場合

僕がそうだったのですが、comments.php を改造していると、この class が取得できないこともあります。
もうちょっとスマートなやり方があるかもしれませんが、その場しのぎ的に対処してみました。

デフォルトテーマの comments.php でコメントは、<?php wp_list_comments();?> で表示されています。
<?php wp_list_comments();?> を Codex で見てみると、

<li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">

という箇所があります(参照: Function Reference/wp list comments « WordPress Codex)。

このプラグインが class を付けるのは、ここの <?php comment_class(); ?> 部分のようなので、カスタマイズした comments.php の該当箇所に <?php comment_class(); ?> を追加してみたらちゃんとクラスが追加されるようになりました。

マニアックなカスタマイズ

フィルターフックもいくつか用意されていて、これら取得してきたフィードバックデータを自分好みにカスタマイズできるようになっています。

feedback-champuru/comment_type
取得してきたデータを通常のコメントとして扱うか、trackback、pingback として扱うかを変更
feedback-champuru/get_feedback
Twitter、はてなブックマーク、Delicious 以外のデータも扱いたい場合に使用
feedback-champuru/comments_array、feedback-champuru/content
取得してきたデータを編集するために使用
feedback-champuru/cache_expired
データ取得間隔を変更(デフォルトは30分に1回)

2010年7月19日現在、プラグインのバージョンは 0.5.0 です。

作者が日本人ということもあり、要望を伝えやすいかと思います。
トラックバックやコメントはもちろん、Twitter やブックマークコメントで「こんな機能が欲しい!」などいろいろな要望が伝えられて、より使いやすいプラグインになってもらいたいなと思います。

WordPress Plugins/JSeries » Feedback Champru