溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

不用wordpress插件顯示文章瀏覽統(tǒng)計功能的方法

發(fā)布時間:2020-08-17 16:27:44 來源:億速云 閱讀:154 作者:小新 欄目:建站服務器

這篇文章主要介紹不用wordpress插件顯示文章瀏覽統(tǒng)計功能的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

如何不用wordpress插件顯示文章瀏覽統(tǒng)計功能?

wordpress無插件顯示文章瀏覽數(shù),附原理說明,網(wǎng)上關于這方面的文章很多了,但是如果不了解下其中原理,難免有些不安,生怕代碼有什么漏洞,影響網(wǎng)站的正常訪問。下面就來解釋一下其中的原理,代碼已經(jīng)在wordpress 3.4.1版本上測試通過

增加文章瀏覽數(shù)

wordpress本身不帶文章瀏覽數(shù)的統(tǒng)計功能,所以要先將文章瀏覽數(shù)記錄起來,才能在顯示文章的時候讀取到瀏覽數(shù)。wordpress的數(shù)據(jù)庫中文章表是wp_posts,其中沒有瀏覽次數(shù)的字段,如果自己加字段改動就大了。比較好的辦法就是將數(shù)據(jù)記錄在wp_postmeta這個表中,這個表就是用來記錄一些文章擴展數(shù)據(jù)的。實現(xiàn)代碼如下:

代碼如下:

/**
* 設置文章的瀏覽次數(shù)
* 
* @param int $postID 文章編號
*/
function setPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if ($count == '') {
add_post_meta($postID, $count_key, '1');
} else {
$count++;
update_post_meta($postID, $count_key, $count);
}
}

代碼的流程就是先從wp_postmeta獲取文章的瀏覽數(shù),然后進行判斷:如果沒有獲取到則增加文章瀏覽數(shù)的數(shù)據(jù),初始值設置為1;否則就將瀏覽數(shù)加1,更新文章瀏覽數(shù)。

最后只需將這段代碼復制到主題的funtions.php文件中,并在文章頁面(single.php)的主循環(huán)內調用即可,調用代碼如下:

代碼如下:

<?php setPostViews(get_the_ID()); ?>

不用wordpress插件顯示文章瀏覽統(tǒng)計功能的方法

獲取文章瀏覽數(shù)

文章瀏覽數(shù)記錄之后就能讀取到了。代碼如下:

代碼如下:

function getPostViews($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
return 1;
}
return $count;
}

代碼的流程就是從wp_postmeta獲取文章的瀏覽數(shù),如果沒有就返回1,否則就返回瀏覽數(shù)。

將這段代碼復制到主題的funtions.php文件中,在需要的地方調用這個方法就可以了。

網(wǎng)上流行的版本有調用delete_post_meta,仔細查看代碼發(fā)現(xiàn)沒有什么必要。另外還有一個postviews插件也能實現(xiàn)類似功能,不過從官網(wǎng)來看只兼容到wordpress 3.3.2版本。

以上是不用wordpress插件顯示文章瀏覽統(tǒng)計功能的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI