搭建自己的技术博客系列(五)hexo博客接入busuanzi插件,展示访问量和网站运行时间
busuanzi计数脚本
busuanzi官方指引
一、安装脚本(必选)
要使用不蒜子必须在页面中引入busuanzi.js,目前最新版如下。
不蒜子可以给任何类型的个人站点使用,如果你是用的hexo,打开themes/你的主题/layout/_partial/footer.ejs添加上述脚本即可,当然你也可以添加到 header 中。
二、安装标签(可选)
只需要复制相应的html标签到你的网站要显示访问量的位置即可。您可以随意更改不蒜子标签为自己喜欢的显示效果,内容参考第三部分扩展开发。根据你要显示内容的不同,这分几种情况。
1、显示站点总访问量
要显示站点总访问量,复制以下代码添加到你需要显示的位置。有两种算法可选:
算法a:pv的方式,单个用户连续点击n篇文章,记录n次访问量。
本站总访问量次
算法b:uv的方式,单个用户连续点击n篇文章,只记录1次访客数。
本站访客数人次
如果你是用的hexo,打开themes/你的主题/layout/_partial/footer.ejs添加即可。
实例效果参考:
http://liam0205.me
http://gameknife.github.io
http://read.mobi
http://pgqlife.info
http://sdxy0506.github.io
http://www.gcrimson.com
http://libk.net
http://ztyoung.me
http://blog.itmyhome.com
2、显示单页面访问量
要显示每篇文章的访问量,复制以下代码添加到你需要显示的位置。
算法:pv的方式,单个用户点击1篇文章,本篇文章记录1次阅读量。
本文总阅读量次
代码中文字是可以修改的,只要保留id正确即可。
实例效果参考:
http://dbarobin.com/2015/04/14/operation-and-maintenance-engineer-tips
http://blog.jamespan.me/2015/05/06/mvn-incremental-compilation
http://cubernet.cn/blog/optimization-3
注意:不蒜子为保持极简,暂不支持在站点文章摘要列表中(如首页)逐个显示每篇文章的阅读次数,如果您非常需要这一功能,可以留言。根据需要程度再考虑开发相应的功能。
3、显示站点总访问量和单页面访问量
你懂的吧,上面两种标签代码都安装。
实例效果参考:
http://cubernet.cn/blog/swift-1
http://lvzejun.cn/2015/03/31/ubuntu-software
http://www.lvzejun.cn/2015/04/13/libvirt1md
我的配置
1、配置是否开启不蒜子访问量统计功能
在themes/icarus/_config.yml添加属性
是否开启访问量统计功能(不蒜子)
busuanzi:
enable: true
2、引入不蒜子并添加站点访问量
在themes/icarus/layout/footer.ejs末尾添加如下代码
<% if (theme.busuanzi && theme.busuanzi.enable){ %>
<!-- 不蒜子统计 -->
<span id="busuanzi_container_site_pv">
本站总访问量<span id="busuanzi_value_site_pv"></span>次
</span>
<span class="post-meta-divider">|</span>
<span id="busuanzi_container_site_uv" style='display:none'>
本站访客数<span id="busuanzi_value_site_uv"></span>人
</span>
<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
<% } %>
3、添加文章访问量
在themes/icarus/layout/common/article.ejs开头添加如下代码
事实上,这段代码我并不确定是否能用
由于icarus主题的配置比较特殊,有些配置项我也不太确定,于是都配置了上去
网站上线时间展示
效果展示
看看我博客最下方的展示效果吧:how2playlife.com
原文地址:https://www.cnblogs.com/xll1025/p/11520607.html
- Oracle Schema
- Oracle 索引
- Oracle dbms_random随机函数包
- volatile和Synchronized区别
- Oracle 快速插入1000万条数据的实现方式
- HashMap实现原理分析
- Oracle TM锁和TX锁
- Oracle给Select结果集加锁,Skip Locked(跳过加锁行获得可以加锁的结果集)
- select for update和select for update wait和select for update nowait的区别
- Android入门之动画
- Java 读写大文本文件
- 高级聚类
- Oracle 数据库名、实例名、Oracle_SID
- Oracle 多行、多列子查询
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android自定义橡皮擦效果
- Android Canvas drawText文字居中的一些事(图解)
- Nginx+keepalived一主一从高可用,手把手带你一步一步配置!
- Behave!:一款针对页面活动的浏览器监控插件
- R可视化 | 地理信息空间(上)
- Nautilus:一款基于语法的反馈式模糊测试工具
- R可视化 | 地理信息空间(下)
- 21页优雅读博指南:佐治亚理工学院助理教授Eric Gilbert撰写,入坑前必读
- Too old resource version 引起 Flink JobManager 崩溃的问题定位
- SharpHose:一款基于C#开发的Windows异步密码喷射工具
- PyTorch版YOLOv4更新了,不仅适用于自定义数据集,还集成了注意力和MobileNet
- 一行代码不用写,就可以训练、测试、使用模型,这个star量1.5k的项目帮你做到
- Android画板开发之橡皮擦功能
- Android画板开发之基本画笔功能
- python递归函数求n的阶乘,优缺点及递归次数设置方式