{教程}最新Postviews html缓存实时刷新解决方案




没错,我又遇见问题了,然后又来写最新教程了…

全站开启了html全静态缓存,可以在服务器挂掉的情况下正常运行30天,但是这有个问题,缓存的html会不再计数文章访问数,就算是Postviews插件对于我也无效,然而我百度了一下解决办法,没错…又是几年前的教程,这里我们需要动手自己来写下代码了


教程开始

第一步

进入插件目录/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
});

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文件,在最后加入以下代码

 

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;
}

最后

对于月宅来说,问题已得到了完美解决,如果其他人不行的话,大概是长得丑了吧 :lol:

记得刷新全站缓存

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
等待编辑中
7 条回复 A 作者 M 管理员
  1. 插件最新版已经支持在开启缓存后利用Ajax来计数,但是有个问题,生成的HTML页面上的浏览量并不会增加……

    • 这么棒了吗!能计就行!只要缓存清理后还可以正常显示就行。我现在是缓存着不计,清理了也不动。

  2. @(你懂的)另外补充一下,这个是计数是第一次访问网站与文章的人才会被计数上,如果你访问了这篇文章,那么+1,你返回去再点进来,是不会被计算的,如果想要被计算,那么只有清理浏览器本地缓存

    • @(滑稽)我已经提交原创了,你们这群复制狗都去死吧

    • 大佬莫装逼,因为我在代码中看见了bigfa也就是大发

    • 代码插件内的,但解决办法的确是如此最新的

    • 滑稽,突然发现这个插件会计必应和中搜的蜘蛛,回头改改

欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论