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]代码
点击: <span id=‘views‘></span> 次
<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>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。