Popular Posts by Webline でカテゴリ別「人気の投稿」実装してみる

Popular Posts by Webline

WordPressのサイトでアクセスの多い記事をサイドバーなどに表示できる「人気記事」表示のプラグイン。
導入している人けっこう多いですよね?有名どころだと「WordPress Popular Posts」とかが有力候補でしょうか?
ボクはマルチプラグインパックの「Jetpack」に搭載されている人気記事ウィジェットを愛用していたのですが、今回はあまりメジャーではない Popular Posts by Webline というプラグインを使って、「カテゴリ別に人気記事の表示内容を変える」方法を試してみたので備忘録。

Popular Posts by Webline

導入の経緯

まず、今回の導入に至った経緯を軽く説明します。

前述したように、このブログでは以前からJetpackの人気記事ウィジェットを導入してサイドバーに「人気の投稿」をランキング形式で表示していました。
記事ごとのアクセス推移がパッと見れて重宝していたのですが、ブログ開始3ヶ月を過ぎてちょっとした悩みが…。

今現在このブログでアクセスが最もあるのが漫画「ハンターハンター」のレビュー記事です。
ネタバレとか考察とかで検索流入してくるのもほとんどこのカテゴリ。
それ以外の音楽だったり映画だったりのレビューやWordpress関連などのカテゴリもちょくちょく継続的にアクセスはありますが現状、比ではないです。

そうなると必然的に人気記事ランキングを「ハンターハンター」の記事が独占してしまいます。
実際アクセスが多い記事なのだから当然なのですが、他カテゴリに検索からたどり着いた人などコミック関連に興味のないユーザーからしてみれば、この「人気の記事」表示はあまり参考にならないですよね。

当該カテゴリの記事が多め、程度ならスルーしたんですが10位圏内の全記事が「ハンターハンター」なので、ちょっとユーザビリティにも影響するかな、と懸念しはじめました。

ハンターハンター記事が独占

そこで、「コミック」カテゴリ以外では「コミック」カテゴリを除いたランキングを表示し、「コミック」カテゴリでは全カテゴリ対象のランキングを表示する方法はないか、と模索しました。

で、最初はJetpackのプラグインをいじることも考えたのですが、プラグインファイルをいじると更新時に後々面倒そうなので見送り。要件を満たすプラグインはないかな〜と探していた時に見つけたのが「Popular Posts by Webline」です。

Popular Posts by Webline

Popular Posts by Webline

プラグインタイトルからもわかるとおりWeblineというパブリッシャーによって制作されたプラグインです。
リンクからたどるとどうやらインドの開発会社のよう。
http://www.weblineindia.com/

怪しいプラグインは入れないに越したことはないのですが、欲しい機能を備えているので見送り難い。
評価数は少ないですがまずまずの評価値であること、最終更新も比較的最近で現在使っているWordPressのバージョンにも対応していることから導入を決めました。

このWeblineという会社、ほかにもちょっと気になるプラグインをだしてるっぽいのでこの導入で気に入ったら他のプラグインも試してみようと思います。

Webline社のプラグイン

導入準備

インストール

プラグイン→新規追加 から「Popular Posts by Webline」を検索しインストールします。

インストールし有効化すると特別設定画面などは追加されません。
外観→ウィジェット に移動すると「Popular Posts by Webline」という項目が増えていますので、ウィジェットを設置したい任意の場所へドラッグします。

Popular Posts by Webline ウィジェット

ウィジェットの項目

次にウィジェットの表示設定をいじります。
まずはウィジェットの各項目の説明を、各項目の説明は後術します。

Title ウィジェットのタイトル
No. of Posts to Show 表示件数
Show Post Before (Days) ランキング対象となる記事を何日前まで含めるか(Noneなら全記事が対象になります)
Sort By 並び順(アクセス数とコメント数のどちらかを選べます)
Show No. of Comments コメント数を表示するかどうか
Show Post Views Count 閲覧数を表示するかどうか
Show Post Date 投稿日表示するかどうか
Show Featured Image サムネイル表示するかどうか
Featured Image Width サムネイルの幅
Featured Image Height サムネイルの高さ
Show Excerpt 記事の抜粋表示するかどうか
Excerpt Length 抜粋の長さ
Read More Text 抜粋文末の処理([…]とか[続きを読む]とか)
Select Category ランキング対象にするカテゴリーを選択
Exclude Current Post 当該記事をランキングに表示するかどうか
Show Relative Date 投稿日の表示を相対表示にするかどうか

ウィジェットの表示設定

今回のボクがやろうとしているカスタム要件は下記。

  • 「コミック」カテゴリの記事では除外せず全カテゴリのランキングを表示
  • 「コミック」カテゴリの記事以外では「コミック」カテゴリをランキングから除外
  • その他のページ(トップや検索結果)などでは「コミック」カテゴリをランキングから除外

このブログでは、単一記事ページではサイドバー下部に人気ランキングを、単一記事以外のページではサイドバー上部に人気ランキングを表示しています。
なのでサイドバー上部用と下部用(コミックカテゴリとそれ以外)の3つのウィジェットを用意します。
※ページの構成によって設定はまちまちでしょうから、この手順を参考にする場合は各サイトに合うように対応させてください。

Popular Posts by Webline ウィジェット項目

まず、タイトルにウィジェット名を入力。
ランキング項目は記事ページには5件、それ以外では10件表示させたいのでそれぞれのウィジェットに件数を5と10で入力。

Show Post Before (Days)はとくに指定がなければNone(全記事対象)でよいでしょう。
対象記事を日付で絞れる項目なのですが、たとえば「30」を選択すると1ヶ月以上前に投稿した記事はランキング対象外になります。アクセスのある記事が1ヶ月以上前に書かれていたとするとアクセスがいっぱいあっても表示されなくなるので注意です。

並び順も通常は「アクセス数」(Post Views Count)で問題ないでしょう。
コメント数、回覧数、投稿日の表示については各々のサイトデザインに併せて選んで下さい、ボクの場合は必要ないので非表示にしました。
サムネイルは表示、サイズもデフォの100×100にしました。
んで、抜粋文は非表示。

上記まで終えたら、一旦CSSでデザインを整えました。
そのまま使っても問題はないですが、ボクはテーマ(STINGER7)に合うようにCSSをいじりました。
ただコメント数、回覧数、投稿日を表示させるとCSSの配置が複雑になるので慣れていない人はやらないほうが吉。