1. 程式人生 > 其它 >WordPress獲取文章瀏覽總數

WordPress獲取文章瀏覽總數

大部分 WordPress 都會安裝 wp-postviews 外掛來記錄文章瀏覽量,這是一個很實用的外掛。不過它並沒有提供計算文章瀏覽總數的功能,為了彌補這個缺憾,我們可以在外掛基礎上 DIY 一個統計文章瀏覽總數的功能。

實現很簡單,網路上也已經有文章做了分享,程式碼如下:

//瀏覽總數
function lo_all_view() {
    global $wpdb;
    $count=0;
    $views= $wpdb->get_results("SELECT * FROM $wpdb->postmeta WHERE meta_key='views'");
    foreach($views as $key=>$value)
    {
        $meta_value=$value->meta_value;
        if($meta_value!=' '){
            $count+=(int)$meta_value;
    }
}
return $count;
}

這個程式碼實現的原理是先把所有符合條件的 meta 欄位全部查詢了出來,然後做遍歷運算得到最終瀏覽總數,比較囉嗦。

所以我重新寫了一個性能更好的函式,尤其是用於大量文章的網站的時候,程式碼如下:

/**
* WordPress 獲取文章瀏覽總數優化版 By 張戈部落格
* 文章地址:https://zhangge.net/551.html
* 轉載請保留原文出處,謝謝合作!
*/
function lo_all_view(){
    global $wpdb;
    $count =  $wpdb->get_var("SELECT sum(meta_value) FROM $wpdb->postmeta WHERE meta_key='views'");
    return $count;
}

實現更加簡單,直接使用 MySQL 的 sum 方法計算瀏覽總數,一步到位。

用法和上文程式碼一樣:

1、將這個函式新增到 WordPress 主題函式模板檔案 functions.php 當中即可(注意如果之前加過同名函式的話,請先刪除,否則會出現衝突導致網站報錯!)

2、在需要顯示瀏覽總數的地方,加入如下程式碼即可:

<?php echo lo_all_view(); ?>

好了,本文分享結束,希望對你有所幫助。