閲覧数を記録してみる
いろいろ便利なプラグインがあるので、いくつか試してみて、最終的に採用したのが、Post Views Counterというプラグイン。閲覧数は、コメント数なんかと同じ扱いに思えるかもしれないけど、コメント数は基本機能に組み込まれているので、データベースも投稿と同じテーブル上に存在し、例えば、コメント数の多い順や少ない順にソートして抽出するなんてことも、比較的簡単に出来る。でも拡張機能である閲覧数は、別のテーブルに保存されるので、同じようにはいかない、一手間も二手間もかけてやる必要がある。その手間が少ないと思われたのがこのプラグイン。
機能も豊富で、カウンターのリセットを細く設定できる。1分でもいいし、1年でもいい。使い方としては、1週間でリセットして、週間アクセスランキングなんかもやろうと思えばやれる。一方、閲覧数のカウント自体を、24時間毎にすることもできる。同じアドレスからのアクセスは連続してもカウントしない設定。週間アクセストップ5なんかいいかな?と思っている。
右サイドバーに追加されたウィジェットで表示しているけど、既存のウィジェットとは作者が違うので、中のコードも、表示の仕方も、何もかも違っていて、統一感がなかったので、せめて表示だけは他のウィジェットと同じにしようと思い、かなりハマりました。が、見た目はかなりいい線いっていると思います。と自画自賛w
元の仕様では、サムネイル画像にはリンクなし、タイトルの直後に閲覧数、だったので、まずサムネイル画像にもリンクを貼り、画像をクリックしてもタイトルをクリックしても記事に飛ぶように変更。
変更前
$html .= '<span> ' . get_the_post_thumbnail( $post->ID, $args['thumbnail_size'] ) . ' </span>';
変更後
$html .= '<div class="widget-entry-thumbnail"><a href="' . get_permalink( $post->ID ) . '"> ' . get_the_post_thumbnail( $post->ID, $args['thumbnail_size'] ) . ' </a></div>';
タイトルと閲覧数は、2行で表示して、閲覧数はグレー表示にする。
変更前
$html = '<ul>'; -- 省略 -- $html .= '<li>'; -- 省略 -- $html .= ' <a class="post-title" href="' . get_permalink( $post->ID ) . '">' . get_the_title( $post->ID ) . '</a>' . ($args['show_post_views'] ? ' <span class="count">' . number_format_i18n( pvc_get_post_views( $post->ID ) ) . ' viewed </span>' : '');
変更後
$html = '<div class="widget-tab-content"><ul>'; -- 省略 -- $html .= '<div class="tab-pane active"><li class="clearfix">'; -- 省略 -- $html .= ' <div class="widget-entry-summary"><h4><a class="post-title" href="' . get_permalink( $post->ID ) . '">' . get_the_title( $post->ID ) . '</a></h4>' . ($args['show_post_views'] ? ' <span class="count">' . number_format_i18n( pvc_get_post_views( $post->ID ) ) . ' viewed </span></div>' : '');
これで、他のウィジェットと同じ表示にすることができました。