0%

访客数统计 & google analytics 数据分析

写在前面: 本来是想用leanCloud统计用户数量的(毕竟valine也用了leanCloud做评论数据存储),奈何按教程做了半天一直都没搞出来,一直提示400的错误(哎呀,忘了截图了)。
直观感觉应该是NexT本身的JS或者layout文件的某处出了错,但是NexT的代码对我来说有点复杂,能力有限一直读不懂…主要是嵌套和参数传递之类的关系看不懂,找不到对应的源文件。
Google再三找到了@Qiuyi关于阅读量统计的Blog(传送门在这里),打开了新世界…然后就换成用Firebase统计阅读量了。

对比两个统计工具,应该是leanCloud的比较安全,毕竟有插件和机制保护阅读量数据不被随意删改,Firebase这里好像是可以随意读写的。欢迎讨论。

本文主要写的是如何在NexT主题下加入基于Firebase的阅读量统计功能。另外因为Firebase是Google提供的服务,顺便把 Google analytics一并加上。


正文在下面,我是分割线 "ヽ(´▽`)ノ"♪


基于Firebase的阅读量统计

为啥要用Firebase做阅读量统计前面已经说过了。直接开始教程吧。

进入firebase主页,登录

传送门在这里。因为要用的是google的服务,肯定要先有个google账户,怎么注册就不说了吧…load完之后点创建项目
Firebase homepage

建立一个用来做阅读量统计的项目

名字随便起应该没关系~在这里我选的叫homepage_visitor_count
New project

后面会问你要不要设置Google Analytics分析。这个设置是可选的,当然也可以在建立项目之后再改动。我这里选了不设置,原因后面会解释。完了就可以创建一个项目了。
Google analytics?

后面的配置需要load一小会儿,耐心等一等就行。
Finish!

建立数据库 & 设置读写规则

完成之后进去,选左边开发标签里的database,然后在右边的页面里面选创建数据库
Create database

然后就会问你要用什么规则(这里忘了截图…尴尬)。选哪个都可以,因为其实后面是会修改的。之后就点进来改规则吧。
Modify rules

1
2
3
4
5
6
7
8
9
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /articles/{any} {
allow read: if true;
allow write: if true;
}
}
}

注意上面代码的第三行match /articles/{any}里面的articles其实可以是任何变量名,后一步会继续说明,在这里先说起一下。
做完这一步,Firebase上的设置就做完了。下一步会是对NexT本地项目的配置(就真的很简单

Copy Firebase项目信息填入NexT本地配置文件

按照下图的步骤,点开项目设置,把项目ID和网络API密钥copy下来,分别粘贴到NexT主题配置文件(不是Hexo的配置文件,是NexT的配置文件)里面关于firestore的配置里。
Copy configs

项目ID对应projectId,网络API密钥对应apiKey。当然啦enable要改成true。
Paste configs

还记得上一步提到的任意变量articles吗?其实对应的就是上图配置文件里面collection的值。总之两个设置能对应上就好了。

如无意外,hexo g -d部署完博客页面,刷新一下应该就能看到阅读量统计了。Easy peasy!

再碎碎念两句

如果想要修改阅读量(比如初始化回零),直接在Firebase的database标签里面找回对应文章的阅读量修改就行了。


第二条华丽丽的分割线


Google Analytics

为啥要加个Google Analytics? 只是因为顺手…后面可以通过访问量统计看看究竟是什么内容比较受欢迎?(依然在探索要怎么用)。
如果你是从文章一开始读下来的话,你会发现上面新建阅读量项目的时候,是可以关联一个Google Analytics服务的。但是前面并没有建议关联。为什么呢?因为Somehow这里的Google Analytics并不能给我们提供一个NexT配置文件需要的tracking ID…Firebase貌似一开始就提供了一个应用和网站版本的数据分析服务,而主页需要的只是web应用的数据分析(也就是网站分析的业务)

Anyways. 要Google的数据分析业务,先进入Google Analytics,找到创建媒体资源的入口,选网站
Create analytic service

默认网址里面填上主页根目录地址(比如我的小破站就是miniminiwhite.github.io),其他设置随意
Create analytic service

之后把trackingID(追踪ID) copy下来贴到NexT主题配置文件(不是Hexo的配置文件,是NexT的配置文件)里面google_analytics的对应栏目就可以了。
如果想免去本地调试对数据分析的干扰,可以将下一项localhost_ignored的值设置为true忽略本地访问。

搞掂!