❌ 原先直接是部署安装微慕小程序插件,发现微信小程序和网页版博客文章浏览量不一致,原因是微信小程序文章(wl_pageviews)和网页版博客文章(views)浏览量不是统一的文章浏览字段。
✅之后找了微慕微信小程序开发人员,帮忙修改了微慕小程序插件代码,解决了当时浏览量统计问题;
❗也只是解决了文章浏览量的问题,点赞不一致问题没解决(不知道微信小程序点赞字段和博客点赞字段),微慕开发也不太愿意帮忙修改了;文章浏览量修改的代码也不愿意告诉我;
💥随着时间推移,微慕小程序有版本更新(4.6.9→4.7.1);因为开发不告诉文章浏览量修改的代码是那些,所以很久没更新微慕小程序插件的版本;
✅ 所以今天特意花了半个小时查看插件源代码,解决了新版本插件浏览量更新的问题;
下面就是怎么更新微慕小程序文章浏览量统计代码方法;
📍 博客网站使用的是WPJAM + Autmn Pro(主题)+ 微慕小程序;
注释掉代码行数
小程序插件根目录,rest-api-to-miniprogram.php ,注释掉78行的代码
//更新浏览次数(pc)
//add_action('wp_head', 'addPostPageviews');
替换微慕小程序文章浏览量字段
登录服务器终端,执行下面的代码
sed -i 's/wl_pageviews/views/g' includes/ram-util.php
sed -i 's/wl_pageviews/views/g' includes/api/ram-rest-posts-controller.php
sed -i 's/wl_pageviews/views/g' includes/api/ram-wp-rest-posts-controller.php
sed -i 's/wl_pageviews/views/g' includes/filter/ram-custom-post-fields.php
新增统计浏览量代码文件
在/rest-api-to-miniprogram/includes目录下面新增ram-views-api.php文件,并添加代码
<?php
// includes/ram-views-api.php
class RAM_Weixin_API {
private $cache_key_prefix = 'ram_post_views_';
// 获取浏览量的方法
public function get_views($post_id) {
$cache_key = $this->cache_key_prefix . $post_id;
$views = wp_cache_get($cache_key, 'views');
if ($views === false) {
$views = (int) get_post_meta($post_id, 'post_views', true);
wp_cache_set($cache_key, $views, 'views', 3600); // 缓存1小时
}
return $views;
}
// 增加浏览量的方法
public function increment_views($post_id) {
$cache_key = $this->cache_key_prefix . $post_id;
$views = $this->get_views($post_id);
$views++;
wp_cache_set($cache_key, $views, 'views', 3600); // 更新缓存
// 延迟更新数据库,每10次更新一次
if ($views % 10 === 0) {
update_post_meta($post_id, 'post_views', $views);
}
return $views;
}
}
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
暂无评论
要发表评论,您必须先 登录