「最新のコメント日時」順に記事をソートする方法
4件の返信を表示中 - 1 - 4件目 (全4件中)
-
こんにちは、
以下のような感じでどうですか?
<ol> <?php $args= array( 'status' => 'approve', 'type' => 'comment', 'post_status' => 'publish', ); $comments_query= new WP_Comment_Query; $comments = $comments_query->query( $args ); $html= '<li><p>%1$s</p><article><h2><a href="%2$s">%3$s</a></h2>Author: <span>%4$s</span>Date: %5$s<div>%6$s</div></article></li>'; if ( $comments ) { foreach ( $comments as $comment ) { $id = absint( $comment->comment_post_ID ); $post_data= get_post( $id ); $category = has_category( 4, $id );//カテゴリ判定 if ( $id !== $copied_id && $category) { printf( $html , wp_html_excerpt( $comment->comment_content , 60, '...' ),//コメント esc_url( get_permalink( $id ) ),//投稿URL wp_html_excerpt( $post_data->post_title , 40, '...' ),//投稿タイトル get_the_author_meta('nickname', $post_data->post_author ),//投稿者ニックネーム $post_data->post_date,//投稿日 wp_html_excerpt( $post_data->post_content , 60, '...' )//投稿の概要 ); } $copied_id= $id; } } ?></ol>
早速のお返事ありがとうございます。
カテゴリーの数値だけ変えて、コードをそのまま貼り付けてみたのですが、
ページ自体が表示されなくなってしまいました・・・。とある記事内で、この「最新のコメント日時」順に並んだ記事のリストが欲しいのですが、
これは投稿記事内にそのまま貼り付けても使えますでしょうか?
記事の中でPHPを使えるようにするプラグインは入れてあります。投稿には、貼れないんです。
記事の中でPHPを使えるようにするプラグインは入れてあります
そういったプラグインを利用していないので、できるかどうかは解りません
個人的には、投稿本文でPHPが実行できると便利だとは思いますが、本来のWordPressの設定やカスタマイズに慣れておいたほうがいいと思います。
4件の返信を表示中 - 1 - 4件目 (全4件中)
- トピック「「最新のコメント日時」順に記事をソートする方法」には新たに返信することはできません。
(@mintmind)
9年、 6ヶ月前
タイトルの通りです。
記事についた最新のコメントの日時の順番で、
特定カテゴリの記事を並べ替える方法を探しています。
記事A 最新コメント 3/14 12:00
記事B 最新コメント 3/13 20:00
記事C 最新コメント 3/14 17:00
こうなっていたら ↓↓
記事C 最新コメント 3/14 17:00
記事A 最新コメント 3/14 12:00
記事B 最新コメント 3/13 20:00
↑↑ こういった順番に記事を並び替えられるようにしたいのです。
同様の質問は海外フォーラムなどでもいくつか見つけましたが、
どれも試してみたところどうも上手く機能しません。
http://wordpress.org/plugins/filter-by-comments/
こういったプラグインもあるのですが、これもなぜだが使えなくて困っています。
わかりやすく、query_postなどを使ってできればよいのですが・・・。
なにかいい方法があればお教え下さい。