解決 WP Postviews 快取無法刷新
3,599 0
很久很久以前(就是剛建站的時候),我就用上了 WP Postviews 外掛,因為那時候開啟了 CDN,所以沒法統計訪問量,於是就寫了「WordPress 開啟 CDN 瀏覽量不增加」這篇文章。
現在我又開啟了 HTML 快取,雖然后台數據能統計訪問量,然而前台頁面還是不會刷新,沒辦法咯,只好到處找教程,後來在月宅醬找到了完美的解決方案,現在分享給小夥伴們。
解決
第一步、進入外掛目錄 /wp-content/plugins/wp-postviews ,
開啟 postviews-cache.js 檔案,刪除內部所有程式碼,加入以下程式碼並 ctrl+s 儲存。
JavaScript JavaScript
jQuery.ajax({
type: "GET",
url: viewsCacheL10n.admin_ajax_url,
data: "postviews_id=" + viewsCacheL10n.post_id + "&action=postviews",
cache: !1
});
jQuery(document).ready(function() {
var ajax_data = {
action: "show_postview",
bigfa_view: viewsCacheL10n.post_id
};
$.post(viewsCacheL10n.admin_ajax_url, ajax_data,
function(data) {
$('.show-view').html(data);
});
return false;
});
第二步、開啟 wp-postviews.php 檔案,在最後加入以下程式碼
PHP PHP
add_action('wp_ajax_nopriv_show_postview', 'show_postview');
add_action('wp_ajax_show_postview', 'show_postview');
function show_postview(){
$views_options = get_option('views_options');
$ID = $_POST["bigfa_view"];
$custom_fields = get_post_custom($ID);
$my_custom_field = $custom_fields['views'];
foreach ( $my_custom_field as $key => $value ) {
echo str_replace('%VIEW_COUNT%', number_format_i18n($value), $views_options['template']);
}
die;
}
長得帥的人已經完美解決了,長得醜的人還在苦苦掙扎,哇哈哈哈!
評論
(0)暫無評論,來說兩句吧