WordPress(ワードプレス)やMacやxreaの他に、プラスひかげ的Webスタイル

ひかげStyle

WordPress 4.9.2 コメントテンプレートのカスタマイズ

WordPressでcomments.phpのファイルを作るときに迷ってしまう、@ひかげです。

WordPressでcomments.phpをいろいろカスタマイズしようとすると苦労することが多いと思います。

「/wp-includes/theme-compat/comments.php」から、デフォルトのコメントテンプレートをコピーしてカスタマイズすると便利なことに気づきました。

シンプルにカスタマイズした comments.php

自作テーマで「Theme Check」のプラグインを使用した際に、エラーの無い「シンプルなcomments.php」にカスタマイズしています。

<?php if ( post_password_required() ) { ?>

<p class="nocomments"><?php _e('This post is password protected. Enter the password to view comments.'); ?></p>

<?php return; } ?>


<!-- You can start editing here. -->

<?php if ( have_comments() ) : ?>

	<h3 id="comments">
		<?php
			if ( 1 == get_comments_number() ) {
				/* translators: %s: post title */
				printf( __( 'One response to %s' ),  '&#8220;' . get_the_title() . '&#8221;' );
			} else {
				/* translators: 1: number of comments, 2: post title */
				printf( _n( '%1$s response to %2$s', '%1$s responses to %2$s', get_comments_number() ),
					number_format_i18n( get_comments_number() ),  '&#8220;' . get_the_title() . '&#8221;' );
			}
		?>
	</h3>


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



<?php paginate_comments_links(); ?>



<?php endif; ?>



	<?php if ( comments_open() ) : ?>
		<!-- If comments are open, but there are no comments. -->

	 <?php else : // comments are closed ?>
		<!-- If comments are closed. -->
		<p class="nocomments"><?php _e('Comments are closed.'); ?></p>

	<?php endif; ?>



<?php comment_form(); ?>

comments.phpで使用するコメントページ送り用のコード

  • paginate_comments_links()
  • the_comments_navigation
  • the_comments_pagination
  • next_comments_link()
  • previous_comments_link()

コメントページ送り用のコード(コピペ用)

WordPress 4.9.2のカスタマイズ向けに4種類あります。

ディスカッションの設定で、表示がそれぞれ違ってくるため、CSSの追記や修正が必要かもしれません。

使いやすいコードをコピペでどうぞ。

<?php paginate_comments_links(); ?>
<?php the_comments_navigation(); ?>
<?php the_comments_pagination(); ?>
<div class="navigation">
<div class="alignleft"><?php previous_comments_link() ?></div>
<div class="alignright"><?php next_comments_link() ?></div>
</div>

おわりに

自作テーマで「comments.php」をオリジナルで作成するときに、自動で付与されるCSS向けのidやclassも多くあるので、カスタマイズの参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です