WordPress Popular Postsは便利だが、もっと色々したいときに。
- WordPress Popular Postsを入れ、有効化する
- 設定→WordPress Popular PostsのParametersタブを見て、使うパラメータを探す
- 例に倣ってqueryを生成する
- queryの、SQL分を取るために、プラグインの wordpress-popular-posts.php を編集する。line 1768あたりの
$this->__debug( $query );
の前で、
echo $query;
して、$queryを取得する。
- 取得し終わったら戻す。
- query を実行
$query = 出力したquery; $results = $wpdb->get_results( $query ); echo '<pre>';print_r($results);echo '</pre>';
実行すると、
Array ( [0] => stdClass Object ( [id] => 113 [title] => DEF [date] => 2016-10-25 18:36:43 [uid] => 1 [pageviews] => 22 ) [1] => stdClass Object ( [id] => 108 [title] => XYZ [date] => 2016-10-25 16:40:45 [uid] => 1 [pageviews] => 18 ) [2] => stdClass Object ( [id] => 104 [title] => AAA [date] => 2016-10-24 18:26:04 [uid] => 1 [pageviews] => 3 ) )
のようになる
- loopではないので、setup_postdata() を使う
$results = $wpdb->get_results( $query ); foreach( $results as $res ){ $post = get_post( $res->id ); setup_postdata( $post ); get_template_part( 'content', 'popular' ); }
- 好きなように装飾する
以上