WordPress显示文章的閱讀次數,支持緩存頁面AJAX刷新

WordPress显示文章的閱讀次數,支持緩存頁面AJAX刷新

WordPress本身不帶任何統計功能,如果要統計文章的閱讀量並显示,可以借用插件或修改代碼來實現。WP-PostViews就是一款幫助統計瀏覽次數的插件,且簡單易用。

WP-PostViews插件地址:https://wordpress.org/plugins/wp-postviews/

如果以上地址無法訪問,可以直接從這個鏈接下載:http://downloads.wordpress.org/plugin/wp-postviews.1.76.1.zip

安裝完插件且啟用后,在WP-PostViews設置頁中可以看到以下界面:

WP-PostViews設置
WP-PostViews設置

WP-PostViews設置頁非常的簡潔,根據自己需求修改即可。 接下來,將以下代碼插入到主題的文件的相關位置,即可显示文章閱讀量了。

//文章瀏覽量,一般插入到archive.php,single.php,post.php或page.php中。
<?php if(function_exists('the_views')) { the_views(); } ?>

如果你實在不知道將這個代碼插入到什麼位置,以下方式可以在正文頂端或者末尾插入閱讀量統計。

//將以下代碼添加到當前主題functions.php的最後
function postviews_content_insert( $return = 0 ) {//
	$str.= "<div class='postviews'>";
	if(function_exists('the_views')) {
		$str.= the_views();
	}
	$str.= "</div>";
	if ($return) { return $str; } else { echo $str; }
}
function postviews_content_filter($content) {
	if(!is_feed() && !is_home() && is_singular() && is_main_query()) {
		$content .= postviews_content_insert(0);// 0在正文上面
		//$content .= postviews_content_insert(1);//1在正文下面
	}
	return $content;
}
add_filter('the_content','postviews_content_filter');

如果開啟了緩存,例如:WP Super Cache、W3 Total Cache或啟用了CDN緩存,則可以用AJAX刷新訪問統計。WP-PostViews的最新版目前已經支持緩存統計,只是不會實時刷新訪問量,可以通過手動修改 WP-PostViews 插件的 postviews-cache.js 文件來實現。

當開啟了 WP Super Cache 之類的插件后, wp-config.php文件中會自動增加以下代碼:

define('WP_CACHE', true);

WP-PostViews檢測到這行代碼后, WP-PostViews設置面板中,會出現“使用 AJAX 更新瀏覽量”的選項,選擇:是。

編輯/wp-content/plugins/wp-postviews/postviews-cache.js文件,替換成以下內容:

 jQuery.ajax({
    type:"GET",
    url:viewsCacheL10n.admin_ajax_url,
    data:"postviews_id="+viewsCacheL10n.post_id+"&action=postviews",
    cache:!1,
    success:function(data) {
        if(data) {
            jQuery('#postviews_lscwp').html('閱讀量:'+data);
        }
   }
});

將以下代碼插入到主題的文件的相關位置,即可在頁面緩存的狀態下實時显示文章閱讀量了。


  
<div id="postviews_lscwp">...</div>

效果可以參照本站的閱讀量統計。

WordPress显示文章的閱讀次數,支持緩存頁面AJAX刷新

0

Line

電話

粉絲頁

導航