Get Recent Comments と言うプラグインを使用してみました。
このプラグインは、 Widget と、php ファイルに直接関数を書くタイプの両方の方法に対応しています。
また、数字が入ったコメントがあると文字化けする事があるようなので、テンポラリーの回避策を書いています。
このプラグインは、トラックバックとコメントの両方の機能がありますが、ここではコメントの機能しか使っていません。
ダウンロード
以下よりダウンロードできます。
WordPress › Get Recent Comments « WordPress Plugins
ダウンロードサイトの右サイドバーに、WoredPress のバージョンとの互換性報告欄があるのですが、
私がダウンロードした時点では、WordPress 2.9 と、プラグイン 2.0.6 の組み合わせで、2人の方が動くと報告していました。
私の環境(WordPress 2.9 + Plugin 2.0.6 ) でも動作したので、 vote しておきました。
インストール
1.ダウンロードして、解凍したファイルを少し修正します。
残念ながらこの記事を書いている時点の最新のバージョン(Ver 2.0.6) でも、半角の数字が入っていると文字化けする場合があるみたいなので、以下の修正を施します。(行数は、Ver.2.0.6での行数です)
※トラックバック部分も文字化けすると思いますが、ここではコメント部分のみの対応について書きます。
get-recent-comments.php ファイルの 1363行目の mb_ereg_replace の行をコメントアウトします。
(理由は追及できていませんが、こうするとテストした範囲だと上手く行きました。ただ、理由があって追加しているはずなので、使っているうちに、他のバグがでるかもしれません。現在観察中です。)
if (function_exists("mb_ereg_replace")) {
// $comment_excerpt = mb_ereg_replace('([^\s]{'.$chars_per_word.'})','\\1 ', $comment_excerpt); // split long words
$comment_excerpt = preg_replace("/\s{2,}/"," ",$comment_excerpt); // whitespace into 1 blank
} else {
$comment_excerpt = preg_replace("/\s{2,}/"," ",$comment_excerpt); // whitespace into 1 blank
$comment_excerpt = wordwrap($comment_excerpt,$chars_per_word,' ',1);
}
修正の効果を確かめるには、新しいコメントを投稿するか、970行目を一時的にコメントアウトしておけば、リロードだけで更新されます。(ここをコメントアウトするとキャッシュが使われなくなります。テストが終わったら元に戻します。)
function kjgrc_cache($type)
{
global $wpdb,$kjgrc_cache,$kjgrc_we_are_a_widget,$kjgrc_widget_args;
$use_cache = FALSE;
if (kjgrc_use_cache()) {
// $use_cache = TRUE;
}
2. 修正したファイルを含んだ、展開してできた get-recent-comments フォルダーを plugins フォルダーに置きます。
3. プラグインを有効化します。
3. サイドバーの php ファイルに以下のソースを追加します。(一例です)
<!-- 最近のコメント -->
<?php if (function_exists('get_recent_comments')) { ?>
<h2><?php _e('最近のコメント'); ?></h2>
<ul><?php get_recent_comments(); ?></ul>
<?php } ?>
4.以下の様にコメントが表示されます。
5.表示するコメントの長さ等は、プラグインの設定画面で変更する事ができます。