Wordpressでコメントに返信があった場合にその返信があったスレッド全体をコメントリストの一番上に表示させたいです。
現状は
php
1wp_list_comments(array( 2 'callback'=>'mytheme_comments', 3 'reverse_children'=>true, 4));
このようにしてコメントリストを表示しています。
reverse_childrenで本件は解決できると思っていたのですが、リプライ(子コメント)が逆順に表示されるだけでした。
【試したこと】
Wordpress管理画面の設定のディスカッションからコメントを新しい順に表示はされています。
よろしくおねがいいたします。
追記
### 【コールバックで呼び出している関数】
php
1<?php 2 3/* コメント表示テンプレートにカスタムフィールドを出力 */ 4function mytheme_comments($comment, $args, $depth) 5{ 6 $GLOBALS['comment'] = $comment; 7 $user = get_userdata($comment->user_id); 8 9 $nickname = esc_attr(get_comment_meta($comment->comment_ID, 'nickname', true)); 10 $commentcontent = esc_attr(get_comment_meta($comment->comment_ID, 'comment_content', true)); 11 12?> 13 <li> 14 <div class="comment-header"> 15 <div class="comment-header-left"> 16 <!-- コメントアバター --> 17 <img alt="" src="icon.png" class="avatar " height="46" width="46" loading="lazy"> 18 <!-- コメント投稿者 --> 19 <div class="comment-author"><?php echo $nickname; ?></div> 20 </div> 21 <div class="comment-header-right"> 22 <p class="comment-date"><?php echo comment_date('Y年n月j日 g:iA'); ?></p> 23 </div> 24 25 </div> 26 <div class="comment-content"> 27 <!-- 添付ファイル --> 28 <?php 29 $filefiled = esc_attr(get_comment_meta($comment->comment_ID, 'file', true)); 30 if (!empty($filefiled)) { 31 $filename_only = basename(get_attached_file($filefiled)); 32 ?> 33 <a href=<?php echo wp_get_attachment_url($filefiled); ?> download=<?php echo wp_get_attachment_url($filefiled); ?>><?php echo $filename_only; ?></a> 34 <?php } ?> 35 <!-- コメント本文 --> 36 <?php comment_text(); ?> 37 <!-- 返信ボタン --> 38 <?php comment_reply_link(array_merge($args, array('reply_text' => '返信', 'add_below' => $add_below, 'depth' => $depth, 'max_depth' => $args['max_depth']))); ?> 39 </div> 40 </div> 41 42 </li> 43<?php 44}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2021/05/17 09:41
退会済みユーザー
2021/05/17 09:44
退会済みユーザー
2021/05/17 09:48
退会済みユーザー
2021/05/17 10:07 編集
退会済みユーザー
2021/05/17 12:47