访客统计Inject:Vercount替代Busuanzi
这周发现进入网站,刷新状态竟然持续了一分多钟,以为是新做完的Music页的特效显示太花里胡哨拖垮了加载,打开后台查看pending情况发现原来是不蒜子资源请求失败了,触发了一分钟的超时。
不蒜子那么多年来作为访客统计的利器,在近年缺点也渐渐显露,尤其是在网络方面,例如不能统计科学上网环境访问、高频的502失败等,而恰巧本站访客基本来自谷歌收录(某度、某狗引擎实在过度拉跨,在本站上线的三个月就被谷歌收录,对比向某度主动推送url后一个月后才收录,某度起大早赶晚集的行事作风的确声名在外,也籍着这个机会,不得不作出一些新尝试了。
查阅了一些博客,恰好有一个名为vercount比较新的项目名对标不蒜子,而且兼容相同的span标签、支持全球CDN、ip访客计数实测比不蒜子还要精确,唯一不足的是这是个为爱发电的公益项目,可能不知道未来哪天就挂了。因此记录下这篇文章,希望更多的博客自建者考虑使用vercount替代busuanzi。
其目前支持span标签或者React框架:
标签配置
官方教程很简单,对于footer的访客统计,可以加入以下代码快速引入:
1
2
3
4
5
6
7<!-- js引入 -->
<script defer src="https://events.vercount.one/js"></script>
<!-- 标签 -->
Total Page View <span id="vercount_value_page_pv">Loading</span>
Total Visits <span id="vercount_value_site_pv">Loading</span>
Site Total Visitors <span id="vercount_value_site_uv">Loading</span>
模板配置
对于与本站类似的butterfly主题配置,可以修改模板文件解决,主要涉及以下文件:
additional-js.pug:js插入换成vercount的资源
1
2
3- //additional-js.pug
if theme.vercount.site_uv || theme.vercount.site_pv || theme.vercount.page_pv
script(async data-pjax src= theme.asset.vercount || '//events.vercount.one/js')
post-info.pug:span标签,使用官网定义的vercount_value_xx替代不蒜子的busuanzi_value_xx
1
2
3
4
5
6
7
8
9post-info.pug
else if theme.vercount.page_pv
+pvBlock('','post-meta-pv-cv','')
span#vercount_value_page_pv
i.fa-solid.fa-spinner.fa-spin
else if theme.vercount.page_pv
+pvBlock('','post-meta-pv-cv','')
span#vercount_value_page_pv
i.fa-solid.fa-spinner.fa-spin
card_webinfo.pug: 卡片模板,换用vercount配置名称
1
2
3
4
5
6
7
8
9
10if theme.vercount.site_uv
.webinfo-item
.item-name= _p('aside.card_webinfo.site_uv_name') + " :"
.item-count#vercount_value_site_uv
i.fa-solid.fa-spinner.fa-spin
if theme.vercount.site_pv
.webinfo-item
.item-name= _p('aside.card_webinfo.site_pv_name') + " :"
.item-count#vercount_value_site_pv
i.fa-solid.fa-spinner.fa-spin
yml文件和其他js配置都引入vercount配置即可:
1
2
3
4
5
6
7
8
9
10
11
12
13//- _config.yml:
vercount:
site_uv: true
site_pv: true
page_pv: false
//- scripts\events\merge_config.js:
vercount: {
site_uv: true,
site_pv: true,
page_pv: true
}
成功替代后在浏览器查看其对象id应该变更:
1 | old: |
纵使版本、建站框架不同,大部分情况只需要全局搜索busuanzi,替换对应的模板或者直接插入标签即可使用,凭其优点是值得折腾一次的,祝应用成功~。
参考链接,感谢这位提起vercount的仁兄:

