本篇文章介绍NexT中通过第三方实现的功能,有的需要通过额外的插件,有的需要通过第三方提供的功能。这些功能丰富了网站内容,弥补了原生静态网站的不足。

欢迎访问博主主页www.Guide2IT.com

Hexo博客专题索引页

增加百度统计分析功能

  1. 访问百度统计http://tongji.baidu.com网站,注册。进入管理菜单,在网站列表下面注册网站并获得访问代码如下。
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?ce33112f521e07dfe453757625e4XXXX";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
  1. 这是一段JavaScript脚本代码。把它放入所有页面的<head>标签最前方,就可以实现访问统计,其中ce33112f521e07dfe453757625e4XXXX是你网站的标识码。

  2. 在NexT中,这段代码已经放入themes\next\layout\_third-party\analytics\baidu-analytics.swig,通过include,当满足条件是就会植入页面头部。

  3. 主题配置中,设置baidu_analytics的值,也就是上面说的标识码,然后植入页面头部代码就会生效。

baidu_analytics: ce33112f521e07dfe453757625e4XXXX

利用插件实现字符统计及阅读时长估计

统计文章中的字符,根据字数估算阅读时间,这个功能是通过插件hexo-wordcount来实现的。

  1. 安装插件
npm install hexo-wordcount --save
  1. 打开主题配置文件进行配置
# Post wordcount display settings
# Dependencies: https://github.com/willin/hexo-wordcount
post_wordcount:
item_text: true # 是否显示“字数统计”及“阅读分钟”的文字
wordcount: true # 是否显示字数统计
min2read: true # 是否显示估算阅读分钟
totalcount: true # 是否在网站底部显示所有文章字数之和
separated_meta: true

效果如图

用leancloud记录访问次数

NexT也集成了leancloud,在leancloud官网

中注册账号,获得app_key和app_id,然后在主题配置文件中进行如下配置。

# Show number of visitors to each article.
# You can visit https://leancloud.cn get AppID and AppKey.
leancloud_visitors:
enable: true
app_id: leanapp_id
app_key: leanapp_key

然后在leancloud的控制台中的存储内添加一个Counterclass,这样就可以记录我们每页的浏览量了。

网站评论系统需要维护用户,用户的留言,因此需要用到数据库。轻博客不具备这些功能,需要借助第三方提供的服务。

在NexT5.1.2版本中,集成了如下第三方的评论系统,只需要在主题配置中就可以打开相应功能。

  • disqus
  • 畅言
  • 多说
  • 有言
  • hypercomments
  • 来必力

其中disqushypercomments来必力是国外的,访问效果可能受影响,多说和有言好像也关闭了,畅言目前可用。

评论系统一个足够,在主题配置中进行相应配置,如果打开多个,会根据themes\next\layout\_third-party\comments\index.swig中的顺序,前面配置成功,后面的就无效了。

以畅言为例,只需要在主题配置中打开下列配置。

changyan:
enable: true #打开开关
appid: #畅言系统网站上申请的appid
appkey: #畅言系统网站上申请的appkey

填入从畅言网站获得的appid和appkey即可开启评论。

给博客添加网站地图sitemap

搜索引擎每天让蜘蛛在网站爬行来抓取页面,网站地图的作用就是给主动给蜘蛛喂数据,网站地图位于网站根目录下,有sitemap.htmlsitemap.xml两种格式。百度搜索引擎及多数搜索引擎使用html格式,谷歌使用xml格式。

两步完成网站地图自动生成功能。

**安装网站地图生成插件**

npm install hexo-generator-sitemap --save

重新启动hexo,系统会在public根目录下生成sitemap.xml文件。

给网站设置RSS订阅

1、先安装 hexo-generator-feed 插件

$ npm install hexo-generator-feed --save

2、打开 站点配置文件 找到Extensions在下面添加

# RSS订阅
feed:
type: atom
path: atom.xml
limit: 20
hub:
content:
content_limit: 140
content_limit_delim: ' '

3、打开 主题配置文件 找到rss,设置为

rss: /atom.xml

添加搜索功能

在网站内部提供搜索功能,可以进行全文搜索。

1、安装 hexo-generator-searchdb 插件

$ npm install hexo-generator-searchdb --save

2、打开 站点配置文件 找到Extensions在下面添加

# 搜索
search:
path: search.xml
field: post
format: html
limit: 10000

3、打开 主题配置文件 找到Local search,将enable设置为true

4、效果如图

添加畅言评论系统

提供网站评论的网站很多,但由于是第三方免费服务,也许说停就停了。但既然是做静态网站博客,涉及到存储和交互的也只能采用第三方的了。

这里选择畅言作为第三方。

1、进入畅言官方网站注册。

2、登录完成之后,进入后台预览,下方找到畅言秘钥,获得APP KEYAPP ID

3、打开 主题配置文件 找到changyan,对应进行配置。

# changyan
changyan:
enable: true
appid: cyueKr
appkey: a458c21e4100cfb443bf7f760a5

畅言需要网站做备案,但是你完全可以借用朋友已经备案的域名和备案号,通过审核后再改为自己的域名,然后备案下来了再修改回来。

hexo-neat压缩文件

hexo-neat作为一个hexo插件出现,他支持压缩html、css和js文件,可以消除hexo生成网页过程中留下大大片空白,压缩输出文件的体积。使用方法如下:

  1. 使用npm安装hexo-neat插件

    $ npm install hexo-neat --save
  2. 站点配置文件中打开开关。

    neat_enable: true  #打开总开关
    neat_html:
    enable: true #打开压缩html文件开关
    exclude: #html的排除列表 neat_css:
    enable: true #配置CSS文件开关
    exclude:
    - '**.min.css' #配置排除文件 neat_js:
    enable: true #js压缩开关
    mangle: true #是否破坏文件名
    output: #是否输出log日志,默认为true
    compress:
    exclude:
    - '*.min.js' #js文件压缩排除列表

对于插件,除了日志输出外,用户基本无感。

Hexo+NexT(五):Hexo第三方插件提供功能及配置的更多相关文章

  1. 项目中整合第三方插件与SpringMVC数据格式化关于ip地址

    一.Bootstrap 响应式按钮 <div calss="col-sm-2"> <button class="btn btn-default btn- ...

  2. Hexo系列(五) 撰写文章

    在利用 Hexo 框架搭建一个属于我们自己的博客网站后,下面我们就来谈谈怎样在网站上书写我们的第一篇博客吧 一.创建文章 在站点文件夹中打开 git bash,输入如下命令创建文章,其中 title ...

  3. Hexo next博客添加折叠块功能添加折叠代码块

    前言 有大段的东西想要放上去,但又不想占据大量的位置.折叠是最好的选择.下面在Hexo的主题上定制添加折叠功能. 本文基于Hexo Next的主题修改.其他主题应该也差不多. 在main.js中添加折 ...

  4. Fiddler抓包【7】_次要功能和第三方插件

    1.替换HTTP Request Host 应用场景:进行开发时,线上去测试跳转调试 替换命令:urlreplace news.baidu.com www.baidu.com: 清除命令:urlrep ...

  5. Fiddler抓包_次要功能和第三方插件

    1.替换HTTP Request Host 应用场景:进行开发时,线上去测试跳转调试 替换命令:urlreplace news.baidu.com www.baidu.com: 清除命令:urlrep ...

  6. 不可思议的hexo,五分钟教你免费搭一个高逼格技术博客

    引言 作为程序员拥有一个属于自己的个人技术博客,绝对是百利无一害的事,不仅方便出门装b,面试时亮出博客地址也会让面试官对你的好感度倍增.经常能在很多大佬的技术文章的文末,看到这样一句话: " ...

  7. 【hexo指南】hexo配置ER图流程图时序图插件

    偏技术的文章有时会用到各种图形,一般来说可以做好图然后截图放到文章中就好了,虽然但图片本身也很小,但存一大堆图片占用空间总觉得不是很好. mermaid mermaid官方网站 mermaid支持很多 ...

  8. 一口一口吃掉Hexo(五)

    如果你想得到更好的阅读效果,请访问我的个人网站 ,版权所有,未经许可不得转载! 通过前四节的内容,相信你已经能够在你的虚拟主机上成功部署网站,并且能够通过你自己的域名访问你的网站了,接下来要做的就是日 ...

  9. Vue导入非模块化的第三方插件功能无效解决方案

    一.问题: 最近在写vue项目时,想引入某些非模块化的第三方插件时,总是发现会有报错.且在与本地运行插件测试对比时发现插件根本没有注入到jQuery中(console.log($.fn)查看当前jq有 ...

随机推荐

  1. 去除WPF中3D图形的锯齿

    原文:去除WPF中3D图形的锯齿 理论上讲PC在计算3D图形的时候是无法避免不出现锯齿的,因为3D图形都是又若干个三角形组成,如果3D图形想平滑就必须建立多个三角形,你可以想象一下正5边形和正100边 ...

  2. MySQL索引 专题

    什么是索引 索引是存储引擎用于快速找到记录的一种数据结构,索引类似一本书的目录,我们可以快速的根据目录查找到我们想要的内容的所在页码,索引的优化应该是对查询性能优化最有效的手段了. 因此,首先你要明白 ...

  3. SQL like使用 模糊查询

    模糊查询: 参考资料:http://www.w3school.com.cn/sql/sql_wildcards.asp 在搜索数据库中的数据时,您能够使用 SQL 通配符. SQL 通配符  Like ...

  4. cat监控平台环境搭建 专题

    项目地址:https://github.com/dianping/cat 编译步骤: 这个项目比较另类,把编译需要的jar包,单独放在git分支mvn-repo里了,而且官方文档里给了一个错误的命令提 ...

  5. WPF自定义控件步骤

    1 .在类库里面添加system.xaml的引用,给控件指定Name: 2.设计控件的外观,并将内部元素绑定到控件类的属性:此时即使没有在类中增加相关属性也不会报错,xaml类似html错误只是不显示 ...

  6. 自绘LISTVIEW的滚动条(Delphi实现)

    因项目需要准备对LISTVIEW的滚动条进行自绘.于是在网上搜了一下,问题没解决,却搜出一篇令人不愉快的帖子 .确实,那时候实力是不够的,但现在应该是没问题了,为这个目的才不断磨练自己的. LISTV ...

  7. 如何将JPEG缩略图放到LISTVIEW中(delphi listview自绘图形)

    http://www.docin.com/p-567657457.html?qq-pf-to=pcqq.c2c http://www.cnblogs.com/snow001x/archive/2008 ...

  8. Quora的技术探索

    关于问答类的应用,最早接触的是stackoverflow和知乎 ,而Quora作为知乎的原型,因为其创始人来自FaceBook而吸引了我.事实上关于Quora的技术分析,冯大辉和陈皓都已经有所详细的阐 ...

  9. Win10《芒果TV》发布两周年纪念特别献礼,陪你度国庆,好礼送不停

    2015年芒果TV和微软中国联姻,在Windows10发布之际,共同宣告了Win10版<芒果TV>的诞生,第一个版本于2015年9月30日登陆Windows商店,历经28次迭代,现在她两岁 ...

  10. 微信小程序把玩(三)tabBar底部导航

    原文:微信小程序把玩(三)tabBar底部导航 tabBar相对而言用的还是比较多的,但是用起来并没有难,在app.json中配置下tabBar即可,注意tabBar至少需要两个最多五个Item选项 ...