{教程}最新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;
}

最后

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

记得刷新全站缓存

给TA买糖
共{{data.count}}人
人已赞赏
网络干货

{教程}ios10.2越狱教程+工具下载

2017-1-29 20:05:02

网络干货

{干货}20个PHP编程效率的要点

2017-2-1 18:45:38

5 条回复 A文章作者 M管理员
  1. 月宅

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

    • 月宅

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

    • 月宅

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

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

    • 月宅

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