WordPress文章閱讀量統(tǒng)計(jì)和顯示(非插件, 刷新頁面不累加)

本文已同步到專業(yè)技術(shù)網(wǎng)站 www.sufaith.com, 該網(wǎng)站專注于前后端開發(fā)技術(shù)與經(jīng)驗(yàn)分享, 包含Web開發(fā)、Nodejs、Python、Linux、IT資訊等板塊.

WordPress文章閱讀量統(tǒng)計(jì)實(shí)現(xiàn)思路:

每進(jìn)入一次文章詳情頁面, 就會(huì)通過cookie判斷該用戶是否在設(shè)定的過期時(shí)間內(nèi)訪問過該文章, 若沒有訪問過, 則瀏覽次數(shù)增加一次。

實(shí)現(xiàn)流程如下:

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 文件, 時(shí)間間隔可自定義設(shè)置, 放在該文件最上面即可:

<?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. 將以下代碼添加到要顯示瀏覽次數(shù)的位置, 例如 文章列表(template-parts/content.php), 文章詳情頁面(template-parts/content-single.php), 搜索結(jié)果頁面(template-parts/content-search.php)等。

<?php echo getPostViews(get_the_ID());?>

以下是我的個(gè)人博客 http://www.sufaith.com 添加展示閱讀量的代碼和實(shí)際顯示效果。

顯示閱讀量.png
展示效果.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容