update_post_meta()関数 ・・・ 指定した投稿に存在するカスタムフィールドの値を更新する関数
記事の閲覧数をカウントしてみよう
記事の閲覧数は記事を表示するたびにカウントすればいいので、「functions.php」に「get_post_status()」を使って、公開されている記事かを確認して、さらに「is_single()」を使って、記事個別ページの時のみ、現在の閲覧数に「1」を足した数字にカスタムフィールドを更新すればよい。
- 「dummy」 › 「functions.php」をテキストエディタで開く
- 下記を参考に閲覧数をカウントするコードを記述
dummy/functions.php
/*======================================
閲覧数のカウント
======================================*/
function update_post_views() {
global $post; // $post にアクセスできるようにする
// 公開されている記事でかつ、個別投稿ページの場合
if ('publish' === get_post_status($post) && is_single()) {
// 現在の閲覧数を整数値で取得
$views = intval(get_post_meta($post->ID, '_post_views', true));
// 現在の閲覧数に「1」を加えた値で更新
update_post_meta($post->ID, '_post_views', ($views + 1));
}
}
add_action('wp_head', 'update_post_views');
- 上書き保存
- 「dummy」 › 「single.php」をテキストエディタで開く
- 閲覧数を表示する「キー」を変更する
dummy/single.php
<p class="p-article__text">閲覧数:<?php echo esc_html(get_post_meta($post->ID , '_post_views' ,true) ); ?></p>
- 上書き保存
-
サイトにアクセス
(http://localhost/wp-lesson/)
-
閲覧数が増えているかを確認する
ブラウザでの表示例