WordPressのコメントを入れ子に改造

WordPressのコメントを入れ子に改造

現在 XAMPP 内の WordPress テーマ、及び記事の中身を修正中。 久々にテーマをイジると忘れてることや解らないことが次から次へと出てきます。

4、5年前より WordPress に関する情報が増えてるので、解らないことは検索すれば正解、もしくはヒントが得られるのですが、たまにヒットしないことも。 出てこないものを調べ続けても時間の無駄なので、そういう場合は放置。 そのうち解決するでしょう :mrgreen:

今回検索中に Head Cleaner や WP-lightpop などの作者 をかもとさんが記事を書いている、 dogmap.jp に WordPress コメントをスレッド対応にする というエントリーを見つけたので、コレに挑戦してみました。


Sponsored Link

以下やったこと。

comments.php の 「commentlist」 の中身をゴッソリ削除して、下記を記入。

<ol id="commentlist">
	<?php wp_list_comments();?>
</ol>

「cancel-comment-reply」 の 1行を追加。

<div id="respond"><?php _e('コメントを残す', 'kubrick'); ?></div>
<div id="cancel-comment-reply"><small><?php cancel_comment_reply_link() ?></small></div>
	<?php if ( get_option('comment_registration') && !$user_ID ) : //コメントするにはメンバー登録が必要で、ログインしていない場合 ?>

「comment_id_fields」 の 1行を追加。

<?php comment_id_fields(); ?>
	<?php do_action('comment_form', $post->ID); ?>
	</form>

functions.php に以下を使い。

<?php
if ( is_singular() ) wp_enqueue_script( 'comment-reply' );
?>

上記コードは header.php に記述しても OK 。

当環境だけかもしれないが、 functions.php と header.php で若干動作が違った。 両方試して最終的に functions.php に記述しました。

当環境ではこれで OK だったが、default テンプレートとは違う形式の場合は、更に一手間かける必要があります。 詳しくは をかもとさんのエントリーを見てください。

図のような感じで入れ子になりました。
WordPressのコメントを入れ子に改造

WordPress 管理画面の [設定] → [ディスカッション] で 「コメントをX階層までのスレッド (入れ子) 形式にする」 にチェックを入れておく。

コメントを書き込んでくれた方に、返信という形でコメントを返せるので一覧が非常に見やすくなりますね。 このブログにも近々実装してみます。

をかもとさんのエントリーは大変為になるものが多いので感謝々 :omiso:

VPS サーバーを借りる前に、 「WordPress 高速化&スマート運用必携ガイド」 を買わなくっちゃ :mrgreen:

Sponsored Link

コメントを残す