wordpress,cos-html-cache静态化后,点击数失效问题的解决方案

装了wordpress cos-html-cache 静态插件后,生成了静态文件,post-views等点击数插件就失效了,

找了一些,包括有个js版本的,需要用到post-views插件,我也不想装太多插件,于是有了下面的方案。

1:Advanced Custom Fields插件。

安装后,我原先用作缩略图字段的,新增加一个字段:点击数

2:发文章,

可以随便填写,也可以不填
3:修改文章模板文件

4:

wp_conter.php文件

5:效果
对应见图

1. [图片] wp-custom_fields.png    

2. [图片] wp-article_write.png    

3. [图片] wp-theme_js.png    

4. [图片] wp_counter.png    

5. [图片] wp_clicks2.png    

​6. [代码][PHP]代码   
<?php
/*
Plugin Name: 点击数ajax统计
Version: 1.0另类图片
Author: zhy
Author URI: http://blog.sina.com.cn/shengqingjingxin
*/http://www.enterdesk.com/special/linglei/​
 
    include_once('wp-config.php');
    include_once('wp-includes/wp-db.php');
     
    global $wpdb;
    $postid = $_GET['id'];
    if (is_numeric($postid)!=true) {
        exit();
    }
  
    $strsql = "SELECT meta_value,post_id  FROM  $wpdb->postmeta where meta_key = 'article_clicks' and post_id=".$postid ;
    $clicks = $wpdb->get_var($strsql);
    if ($clicks!='') {
        $clicks = $clicks +1;
        $strout = $clicks;
        $strsql = "UPDATE wp_postmeta set meta_value=".$clicks." where meta_key = 'article_clicks' and post_id='".$postid."' ";
        $wpdb->query($strsql);
    } else {
        $strout = "1";
        $strsql = "INSERT INTO wp_postmeta(post_id,meta_key,meta_value) VALUES (".$postid.", 'article_clicks', '1') ";
        $wpdb->query($strsql);
    }
      echo $clicks+1;
  
?>
7. [代码][PHP]代码     

点击:&nbsp;<span id='views'></span>&nbsp;次
<script>
        $.get("/wp-counter.php",
         {
            id:"<?php echo get_the_ID(); ?>",
          },
         function(data,status){
                if (status ==='success'){
                    $("#views").text(data);
                }else{
                    $("#views").text(<?php echo get_the_ID(); ?>);
                }
         });
</script>

原文地址:https://www.cnblogs.com/xkzy/p/3949371.html