pjax无刷新加载后百度统计失效解决方案

解决方法

注意,本人使用的是handsome主题自带的pjax功能,其后台较完善,可以直接设置pjax完成回调事件
非handsome主题用户可以看后文改文件配置法参照自己情况进行修改

打开后台外观设置,找到 PJAX - PJAX回调函数 ,新增一行

_hmt.push(['_trackPageview', document.location.pathname+document.location.search+document.location.hash]);

最后保存。
上面这种写法是因为我想记录整个URL信息,即包含查询参数以及hash锚点。如果想要像网络上其他教程一样只记录页面地址,可以换成

_hmt.push(['_trackPageview', document.location.pathname]);

最后保存。
再去百度统计查看,现在应该可以记录到pjax访问页面的记录了。

(备用方法)修改pjax的js文件达成目的

之前在用wordpress时用的一个主题也是用的是pjax无刷新加载,那款主题并没有直接给出pjax回调的快捷设置,于是我找到了主题pjax的js文件,直接在其ajax请求后动作进行了修改
pjax.js

try{_hmt.push(['_trackPageview', document.location.pathname+document.location.search+document.location.hash]);console.log("推送至百度站长统计:"+document.location.pathname+document.location.search+document.location.hash);}catch(err){}

刷新缓存一气呵成,成功!

后记

最后修改:2020 年 04 月 06 日 07 : 33 PM
觉得有帮助的话,打赏一个呗~