私は最新の3つのコメントを表示し、その下に小さなコメントを付けて、各コメントの返信数を表示します(comment_parent => comment_IDの場合、コメントの数を数えます)。
これを行うには、各親コメント(comment_parent => 0)をループしてから、各親コメントに対してget_comments(comment_parent => $ comment_ID)を使用します。
残念ながら、comment_parentは各コメントの内部ループで無視され、comment_parent => 0のコメントの配列が返されます。comment_parentが無視されるのはなぜですか?
<!-- DISPLAY RECENT COMMENTS -->
<?php $args = array(
'number' => 3,
'status' => 'approve',
'comment_parent' => 0
);
$recent_comments = get_comments($args);
foreach($recent_comments as $recent_comment){
echo '<div class="front-page-comments">';
echo $recent_comment->comment_content;
echo '</div>';
$parent_comment_id = $recent_comment->comment_ID;
$comment_meta_args = array(
'status' => 'approve',
'comment_parent' => intval($parent_comment_id),
'number' => 3
);
$replies = get_comments($comment_meta_args);
echo '<div class="front-page-comment-meta">';
echo $parent_comment_id . '<br />';
echo '<pre>';
print_r($replies);
echo '</pre>';
//echo $replies . 'Replies';
echo '</div>';
}
?>
コメントのための wordpressコーデックス関数リファレンス では、親のパラメータはcomment_parent
ではなくparent
であるように見えます。戻り値の先頭にcomment_
が付いているので、これは奇妙で矛盾しています。