ウェブ、ショウジン

人気記事表示のプラグイン「WordPress Popular Posts」をインストール

2011-8-8
Category
WordPress

もうとっくにインストールして使ってますが、一応メモ。

人気の記事っていっても、その人気の測り方、指標によって手段はいろいろあると思います。記事につくコメント数なのか、閲覧数なのかとか。

コメント数だったらSQL文で以下のようにすれば取得、表示できますが

<ul id="popular_posts">
<?php $result = $wpdb->get_results("SELECT comment_count,ID,post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 5");
  foreach ($result as $post) :
    setup_postdata($post);
    $postid = $post->ID;
    $title = $post->post_title;
    $commentcount = $post->comment_count;
    if ($commentcount != 0) : ?>
      <li><a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>">
      <?php echo $title ?></a> {<?php echo $commentcount ?>}</li>
<?php endif; endforeach; ?>
</ul>


このブログはそんなアクセスないし、コメントもめったにないし、そもそもちょっと前にしたリニューアル(初めてのオリジナルテーマ)で現在はコメントフォームついてないのでこの方法は却下。

ということで、view数(閲覧数)で測って、それで「人気」のものを上位何件かサイドバーに表示することにしました。

選択したプラグインはWordPress Popular Postsで、参考にさせていただいた記事は人気記事表示プラグイン『Wordpress Popular Posts』: DorN-projectです。

このプラグインの導入はウィジェットでの利用が前提だと思っていたので先に「自作のWordPressテーマをWidget(ウィジェット)対応させる」でテーマをウィジェット対応させておいたんですが、そんなこともないみたいです。参考記事内にあるように以下のような記述をsidebar.phpに直接するのでも大丈夫そう。

<?php if (function_exists('wpp_get_mostpopular')) wpp_get_mostpopular(); ?>

実際やってないんで未検証ですが。

話は戻ってプラグインのWordPress Popular Postsですが、人気の記事をview数やcomment数とかでソートして表示させることができます。view数は日毎、週毎、月毎で設定可能で、comment数やview数のcount部分の表示・非表示も選択可能。また、出力するhtmlソースの内容も管理画面からカスタマイズができて、仕様しているテーマのマークアップに合わせて柔軟な出力が可能になっているようです。

WordPress Popular Postsをインストールして有効化すると(プラグインのインストールについては割愛)管理画面のダッシュボードにWordpress Poplular Posts Statsっていうテキストリンクが追加されるので、それをクリックすると以下のように人気の上位10件の記事が確認できます。キャプチャ画面は「Today」になってますが、そのとなりのボタン群をクリックすることでWeekly、Monthly、All-time別で確認もできます。各記事におけるcomment数、view数も確認できます。

wpp1

これを実際にフロント側に表示するには、管理画面の外観から「ウィジェット」にアクセスし、「利用できるウィジェット」からWordpress Popular Postsをグイっと右側の「Side Widget」ブロックにドラッグ&ドロップします。このブロックの名前(フロント側でユーザーに見せる)もここの「Title」で変更できますし、何件まで表示するか、どのスパンでもっての人気記事を表示するか(Time Range)、なにでソートするか(自分はTotal viewsを選択)などなど、その他にもいろいろと設定可能になっています。

wpp2

メニューが英語ですが、前述の参考記事を書かれた方が日本語化ファイルも作成してくれているようですので、日本語化したい人はそちらをどうぞ。

Categories

Tag Cloud

AdMob Android Apache centos CodeIgniter EC-CUBE facebookアプリ facebookページ feed Firefox Flash google googleanalytics htaccess iPad iPhone JavaScript lamp mobile nginx ogp pear php plugin rollover rss sendmail setting smarty ssh Titanium Mobile Titanium Studio tutorial ubuntu vim VirtualBox vmware vps Windows WordPress xampp youtube さくらインターネット アクセス解析 カスタム投稿