トップ
WPランキング調整
プラグインを入れる
ランキングを作るには「WordPress Popular Posts」を使う。
プラグインを入れた後に、通常の場合はショートコードで表示させる。
その場合、フォーマットタグで出力されるので調整はできない。
range=”期間”で時期を調整。
//期間は”daily”, “weekly”, “monthly”, “all”,”last30days”,”last7days”が使用できることを確認
[wpp range=’last30days’ order_by=’views’ limit=’5′ stats_date=’1′ stats_date_format’=’Y年n月j日’]
独自のタグでランキング出力
独自のタグでランキング情報を出力するには、function.phpに出力タグを登録、テンプレート呼び出しの手順になる。
function.php
//function.phpに記載する
//プラグインに登録されているwpp_custom_htmlの関数を使用
function my_wpp_custom_html( $mostpopular, $instance ){
$output .= '<div class="mpw">';
foreach( $mostpopular as $popular ){
// リンクを取得
// タイトル・アイキャッチ画像・ページビュー数を取得
$output .= '<p><a href="' . get_the_permalink( $popular->id ) . '">'. get_the_post_thumbnail( $popular->id, 'thumbnail' ) .'</a></p>';
$output .= '<p>'. $category .'</p>';
$output .= '<p>'. wp_list_categories( $popular->id, 'post_tag' ) .'</p>';
$output .=
'<p>' . esc_html( $popular->title ) . '</p>'.
'<p>' . esc_html( $popular->pageviews ) . 'views</p>';
// フィールド名「info-field」のカスタムフィールドの値を取得
$custom_fields = get_post_meta( $popular->id, 'info-field', true );
if($custom_fields) {
$output .= '<div>' . esc_html( $custom_fields ) . '</div>';
}
}
$output .= '</div>';
return $output;
}
add_filter( 'wpp_custom_html', 'my_wpp_custom_html', 10, 2 );
表示したいファイルに書く
//表示したい部分に記載
<?php
if ( function_exists( 'wpp_get_mostpopular' )) {
$arg = array (
// 記事を表示する最大件数
'limit' => 10,
// 集計期間。 daily, weekly, monthly, all のいずれかを指定
'range' => 'all',
// ソート順の対象。 views(閲覧数), comments(コメント数), avg(1日の平均)のいずれかを指定
'order_by' => 'views',
// ポストタイプを指定。post, page, などを指定
'post_type' => 'post',
);
wpp_get_mostpopular( $arg );
}
?>