WordPress文章閱讀量統計實現想法:
每進入一次文章詳情頁面, 就會透過cookie判斷該使用者是否在設定的過期時間內造訪過該文章, 若沒有造訪過, 則瀏覽次數增加一次。
實作流程如下:
1.新增以下程式碼到主題的functions.php檔案, 放在該檔案最下面即可:
function getPostViews($postID){ $count_key = 'views'; $count = get_post_meta($postID, $count_key, true); if($count=='' || !$count){ return "0"; } return $count; } function setPostViews($postID){ $count_key = 'views'; $count = get_post_meta($postID, $count_key, true); if($count=='' || !$count) { $count = 1; delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, $count); }else{ $count++; update_post_meta($postID, $count_key, $count); } }
登入後複製
2.將以下程式碼新增至主題的single.php 檔案, 時間間隔可自訂設定, 放在該檔案最上面即可:
<?php if(!isset($_COOKIE['views'.$post->ID.COOKIEHASH]) || $_COOKIE['views'.$post->ID.COOKIEHASH] != '1'){ setPostViews($post->ID); setcookie('views'.$post->ID.COOKIEHASH,'1',time() + 99999999,COOKIEPATH,COOKIE_DOMAIN); } ?>
登入後複製
3.將以下程式碼新增至要顯示瀏覽次數的位置, 例如文章列表(template-parts/content.php), 文章詳情頁面(template-parts/content-single.php), 搜尋結果頁面(template-parts/content-search.php)等。
<?php echo getPostViews(get_the_ID());?>
登入後複製
以下是我的個人部落格 新增展示閱讀量的程式碼和實際顯示效果。