ブログ全体の人気記事は「WordPress Popular Posts」というプラグインを使えば表示できるのですが、カテゴリー別の人気記事を出す方法はないのか調べて、ブログに実装しました。 今回はこの方法を紹介したいと思います。
「WordPress Popular Posts」をカスタマイズ
まずは「WordPress Popular Posts」をwordpressに組み込んで有効化してあげます。
次に「ワードプレスのサイドバーにカテゴリ別人気記事を表示する | PLUS」の記事を参考にしてカスタマイズをします。 とはいっても、そのままコピペをして使ったのですが、functions.phpにカテゴリーを抽出する関数を記載します。 [php] // //functions.php の任意の場所に設置 //
//wp_head()実行時にget_current_category()を実行 add_action('wp_head', 'get_current_category');
// 現在のカテゴリを取得 function get_current_category() { global $_curcat; $cate = null; if( is_category() ) { //カテゴリー表示だったら //$now_cate = get_query_var('cat'); //$cate = get_category($now_cate);
$cat_now = get_the_category();
// 親の情報を$cat_nowに格納
$cate = $cat_now[0];
} else if (is_single() ) {
//シングルページ表示だったら
$cates = get_the_category();
$i = 0;
$use_category = 0;
foreach ($cates as $cate) {
//未分類を除外した配列の一番初めのカテゴリを選択
if($cate->category_parent > 0 && $use_category == 0) {
$use_category = $i;
}
$i++;
}
$cate = $cates[$use_category];
}
//カテゴリーのオブジェクトごと保持
$_curcat = $cate;
return $cate;
} [/php]
次に、ブログ内の人気記事を表示させたい所に以下のコードを記載します。 [php]
[/php]
表示方法をカスタマイズする
後は、人気記事を出力するために[get_mostpopular();]をカスタマイズします。 「get_mostpopular」のカスタマイズは「nm705.com」の記事を参考にしました。
「WordPress Popular Posts」脆弱性の問題。
これは調べているうちにわかったのですが、「WordPress Popular Posts」内で利用している「timthumb.php」に脆弱性がるみたいです。
詳しくはこちらを参考にしてください。 Wordpress Popular Postsでサムネイルを表示している方は要注意! | PLUS
さいごに
私は固定されたサイドバーにこのオススメ記事一覧を載せました。 こんな感じです。
[参考にしたサイト]