どの記事がどれくらい閲覧されているのか気になりますよね?このブログで使用しているWordPressのテーマSwellはデフォルトで、管理画面にPV(アクセス数)が表示される機能がついています。残念ながら、どのテーマにも付いているものではありません。
他のサイトにもあったら便利なので付けました。プラグイン無しで実装する方法をシェアします。

INDEX
機能の仕様について
- 各投稿欄にPV数(アクセス数)を表示する
- 三画で並び順を変えられる様にする
- 自分がログインしている状態で投稿を確認してもカウントされない様にする
実装方法
子テーマのfunction.phpに追記します。バックアップを取って下さいね。
function setPostview( $postID ) {
$count_key = 'post_views_count';
$count = get_post_meta( $postID, $count_key, true );
if ( $count == '' ) {
$count = 0;
delete_post_meta( $postID, $count_key );
add_post_meta( $postID, $count_key, '0' );
} else {
$count ++;
update_post_meta( $postID, $count_key, $count );
}
}
function getPostview($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if ($count === '') {
$count = 0;
add_post_meta($postID, $count_key, $count, true);
return $count;
}
return $count;
}
function addColumn( $defaults ) {
$defaults['view'] = 'PV';
return $defaults;
}
add_filter('manage_posts_columns', 'addColumn');
function addColumnId($column_name, $postID) {
if ($column_name == 'view') {
echo getPostview($postID);
}
}
add_action('manage_posts_custom_column', 'addColumnId', 10, 2);
function addColumnSort($columns) {
$columns['view'] = 'unique_sort_key';
return $columns;
}
add_filter( 'manage_edit-post_sortable_columns', 'addColumnSort');
function addSortKey( $query ) {
if ( $query->is_main_query() && ( $orderby = $query->get( 'orderby' ) ) ) {
switch( $orderby ) {
case 'unique_sort_key':
$query->set( 'meta_key','post_views_count');
$query->set( 'orderby', 'meta_value_num' );
break;
}
}
}
add_action( 'pre_get_posts', 'addSortKey', 1 );
次に、single.phpにコードを付け足します。子テーマの場合は、親テーマからファイルをコピーして子テーマに置きます。それから使用して下さい。この作業をしないと、テーマを更新した際に上書きされて元に戻ってしまいます。
single.phpの何処に書いても基本的にはOKです。
<?php if( !is_user_logged_in() ) { setPostView(get_the_ID()); } ?>
フックがあるなら
フックがある場合は、テンプレートに書き込まずフックで処理した方が良いです。私の場合はArkheのフックを使用しました。function.phpに追記
// single.phpにカウントさせる
add_action(
'arkhe_start_content',
function () {
if (!is_user_logged_in()) {
setPostView(get_the_ID());
}
}
);
カスタマイズ性が抜群!Arkhe Blocks Pro/Arkhe Toolkit/Arkhe CSS Editorがセットになっている1年間アップデート出来ます。
参考にさせて頂きました


【管理画面で確認】Wordpressの記事の閲覧数(PV)を表示する方法(WP-PostViews) – LAPTOPRENEUR~ひざのうえ…
WordPressの管理画面で記事の閲覧数を表示する2つの方法についてご紹介します。投稿画面から見れるようにするとすぐにアクセスの把握ができるので大変おすすめです。
注意事項
実装した時からカウントされます。初期段階で設置する事をお勧めします。
実装済みのテーマならSwellがオススメ
初心者は何もする必要が無いくらい機能が揃っているテーマです。
コメント ※ハンドルネームでお願いします