WordPress獲取文章瀏覽總數
阿新 • • 發佈:2022-05-05
大部分 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(); ?>
好了,本文分享結束,希望對你有所幫助。