2017
02/01

コメントの数によって記事を抽出

WordPressでコメントの数によって記事を抽出したいと思い方法を調べてみました。

たとえば、

・口コミサイトでやりとりが活発な商品データのみを抽出する
・コメントがゼロの記事を抽出し、活性化を促す

などの使い方を想定しています。

ADs

テンプレート側の記述

get_posts()でコメント数が5件以上10件以下の記事を取得する例です。
最低限のオプションしか記述していませんが、「post_per_page」や「meta_key」などいつものオプションも併用できます。

「comment_num」はもともとget_posts()のオプションにはないオレオレオプションです。
配列のときは○以上○以下のコメント数を持つ記事、数値の場合はその件数のコメントを持つ記事を抽出します。
「suppress_filters」は後で使う「posts_where」を有効にするためのオプションです。

get_posts()は「suppress_filters」がtrue(デフォルト)の場合、「posts_where」や「posts_join」などのクエリを操作するフィルターが無視されます。

functions.phpに記述

以下をfunctions.phpに記述します。

$_GETなどで数値を外部から渡す場合はis_numeric()などによる細かな判定が必要だと思いますので、あくまで最低限ということで…。

コメントを軸としたサイトで使える手法かもしれません。
参考になれば幸いです。

ADs

Post Comments

メールアドレスが公開されることはありません。

Comments

コメントはまだありません。