安装搜索插件
npm install hexo-generator-search --save
hexo配置文件添加:
search:
path: search.xml
field: post
主题配置文件添加:
local_search:
enable: true
中文链接转拼音
如果你的文章名称是中文的,那么 Hexo 默认生成的永久链接也会有中文,这样不利于SEO,且 gitment 评论对中文链接也不支持。我们可以用 hexo-permalink-pinyin Hexo 插件使在生成文章时生成中文拼音的永久链接。
安装命令如下:
npm i hexo-permalink-pinyin --save
在 Hexo 根目录下的 _config.yml 文件中,新增以下的配置项:
permalink_pinyin:
enable: true
separator: '-' # default: '-'
注:除了此插件外,hexo-abbrlink插件也可以生成非中文的链接。
添加emoji表情支持
本主题新增了对emoji表情的支持,使用到了 hexo-filter-github-emojis 的 Hexo 插件来支持 emoji表情的生成,把对应的markdown emoji语法(::,例如:)转变成会跳跃的emoji表情,安装命令如下:
npm install hexo-filter-github-emojis --save
在 Hexo 根目录下的 _config.yml 文件中,新增以下的配置项:
githubEmojis:
enable: true
className: github-emoji
inject: true
styles:
customEmojis:
添加 RSS 订阅支持
(暂未使用过这个插件,但是还是写上,万一用上了呢)
本主题中还使用到了 hexo-generator-feed 的 Hexo 插件来做 RSS,安装命令如下:
npm install hexo-generator-feed --save
在 Hexo 根目录下的 _config.yml 文件中,新增以下的配置项:
feed:
type: atom
path: atom.xml
limit: 20
hub:
content:
content_limit: 140
content_limit_delim: ' '
order_by: -date
执行 hexo clean && hexo g 重新生成博客文件,然后在 public 文件夹中即可看到 atom.xml 文件,说明你已经安装成功了。
生成网站地图
我们需要使用npm自动生成网站的sitemap,然后将生成的sitemap提交到百度和其他搜索引擎
安装sitemap插件如下:
npm install hexo-generator-sitemap --save
npm install hexo-generator-baidu-sitemap --save
在根目录配置文件.yml中修改url为你的站点地址
# URL
# If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
# url: https://www.zdyn.cn/
url: https://www.zdynb.cn
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:
执行完hexo g命令之后就会在网站根目录生成sitemap.xml文件和baidusitemap.xml文件,可以通过:https://www.zdynb.cn/baidusitemap.xml, 查看该文件是否生成,其中sitemap.xml文件是搜索引擎通用的文件,baidusitemap.xml是百度专用的sitemap文件。
hexo-filter-nofollow - Hexo 官方的 nofollow 插件
hexo-filter-nofollow 是一个自动为 Hexo 博客中的外链添加 rel=”external nofollow noreferrer” 的插件。
使用npm安装
npm i hexo-filter-nofollow --save
如果你使用 yarn 作为你的 Hexo 的包管理器,你也可以使用下述命令:
使用yarn安装,yarn安装教程
yarn add hexo-filter-nofollow
然后在根目录的_config.yml添加以下选项
nofollow:
enable: true #是否启用插件,默认值为 true
field: site #插件的处理范围,默认值为 site,可选 post 或 site
exclude: #域名白名单
- 'exclude1.com'
- 'exclude2.com'
enable - 是否启用插件,默认值为 true field - 插件的处理范围,默认值为 site,可选 post 或 site post - 仅处理文章内容 site - 处理全站所有页面 exclude - 域名白名单,不同的子域名视为不同的域名(如 www) exclude1.com不包括 www.exclude1.com 或 en.exclude1.com
添加字数统计和阅读时间
npm i --save hexo-wordcount
npm add hexo-symbols-count-time
使用neat插件压缩来提升访问速度
npm install hexo-neat --save
使用lazyload插件进行优化
npm install hexo-lazyload-image --save