Warning: this function will always return “false” until after comments_template has been called. If you need to check for comments before calling comments_template, use get_comments_number instead.
テンプレートファイルで comments-{post type slug}.php を作成しても自動的には読まれない。single-{post type slug}.php で、comments_template( '/comments-{post type slug}.php' ); のように指定してあげる必要がある。
アーカイブループの中で
have_comments()
を使っても判定がうまくいかない問題にぶつかり、Codex によると、get_comments_number()
を使えとのこと。have_comments()
は単一記事のページでのみ使った方が良いみたい。get_template_part()
でcomments.php
を呼び出そうとして、get_template_part( 'comments.php' );
としていて読み込まれずにハマった。正しくは、get_template_part( 'comments' );
。まあ、これフォームまで表示されるので、別途テンプレートファイルを作ったほうが良さそう。テンプレートファイルで
comments-{post type slug}.php
を作成しても自動的には読まれない。single-{post type slug}.php
で、comments_template( '/comments-{post type slug}.php' );
のように指定してあげる必要がある。リプライボタンも完了
コメントの表示は完了。リプライボタンを付けたいかな。記事のネスト化はまた今度にするか。
コメントの表示順が乱れている
Discussion の設定では Comments should be displayed with the
older
comments at the top of each page となっている。ネストされたコメントのオーダーは新しい方が上に来てる。こないだテーマに追加したコードが原因。
get_comments()
に渡すアーギュメントはこちら ( https://developer.wordpress.org/reference/classes/wp_comment_query/__construct/ )