Hexo初始化配置Matery主题
1、主题不能上传自己的Git私有仓库
首先先进入自己的 hexo 项目目录。执行 git rm --cache themes/主题文件名 从暂存区删除该文件夹
进入下载的主题文件夹内 cd themes/下载的主题文件夹名称 移除 .git 文件夹或者把它先放到其他地方。然后进入cd themes/下载的主题文件夹名称/.gitignore文件里把 _config去掉。
之后就可以正常执行git提交代码命令了。
1 | git add . |
最后在把移出去的 .git 文件夹放回来如果删除了就算了。
2、代码高亮
1 |
|
可以自定义css文件 下载地址:https://prismjs.com/
下载成功后,替换到主题里面的css文件。路径 下载的主题/source/libs/prism/prism.css
使用hexo-prism-plugin代码高亮插件美化代码块时,
默认代码高亮和拓展插件都不起作用。该插件作者几年前就已经探讨过原因和解决方案:
解决的办法是安装hexo-inject,进入到博客项目目录,命令行输入:
1 | npm i hexo-inject -s |
3、添加文章搜索功能
matery目前只支持search.xml xml格式的搜索文件,安装命令:
1 | npm install hexo-generator-searchdb --save |
在 Hexo 根目录下的 _config.yml 文件中,新增以下的配置项:
1 | search: |
含义:
参数含义
path - file path. By default is search.xml. If the file extension is .json, the output format will be JSON. Otherwise XML format file will be exported.
field
the search scope you want to search, you can chose:
post (Default) - will only cover all the posts of your blog.
page - will only cover all the pages of your blog.
all - will cover all the posts and pages of your blog.
content - whether contains the whole content of each article. If false, the generated results only cover title and other meta info without mainbody. By default is true.
format
the form of the page contents, options are:
html (Default) - original html string being minified.
striptags - original html string being minified, and remove all the tags.
raw - markdown text of each posts or pages.
参数含义
Path—文件路径。默认为search.xml。如果文件扩展名为。JSON,则输出格式为JSON。否则将导出XML格式的文件。
场
您想要搜索的搜索范围,您可以选择:
post(默认)-将只覆盖你博客的所有文章。
页面-将只覆盖你的博客的所有页面。
All -将涵盖您博客的所有帖子和页面。
内容——是否包含每篇文章的全部内容。如果为false,生成的结果只包含标题和其他元信息,不包含主体。默认为true。
格式
页面内容的形式,选项有:
html(默认)-原始html字符串被缩小。
Striptags -原始的HTML字符串被缩小,并删除所有的标签。
每个帖子或页面的原始标记文本。
4、社交链接修改
在主题的 _config.yml 文件中,默认支持 QQ、GitHub 和邮箱的配置,可以在主题文件的 /layout/_partial/social-link.ejs 文件中,新增、修改需要的社交链接地址,增加链接可参考如下代码:
5、文章链接转静态短地址
可以用 hexo-permalink-pinyin Hexo 插件生成文章时生成中文拼音的永久链接,或者用hexo-abbrlink生成静态文章链接。安装命令如下:
1 | npm install hexo-abbrlink --save |
配置文件配置信息:
1 | permalink: :year/:month:day:abbrlink.html |
执行 hexo clean && hexo g 重新生成博客文件,就可以生成永久链接。生成完后,原 md文件的Front-matter内会增加abbrlink字段,值为生成的ID 。
6、文字统计插件
使用 hexo-wordcount 的 Hexo 插件来实现在文章中统计显示文章字数、阅读时长信息,安装命令如下:
1 | npm i hexo-wordcount --save |
然后只需在本主题下的 _config.yml 文件中,激活以下配置项即可:
1 | postInfo: |
7、外链跳转
使用 hexo-external-link 的 Hexo 插件来实现外链跳转,安装命令如下:
1 | npm install hexo-external-link --save |
1
在 Hexo 根目录下的 _config.yml 文件中,新增以下的配置项:
1 | hexo_external_link: |
执行 hexo clean && hexo g 重新生成博客文件,就可以实现外链跳转。
8、添加 RSS 订阅支持
使用 hexo-generator-feed 的 Hexo 插件来做 RSS,安装命令如下:
1 | npm install hexo-generator-feed --save |
在 Hexo 根目录下的 _config.yml 文件中,新增以下的配置项:
1 | feed: |
执行 hexo clean && hexo g 重新生成博客文件,在 public 文件夹中看到 atom.xml 文件,说明已安装成功。
9、增加百度统计功能
访问地址:https://tongji.baidu.com/web/welcome/login?castk=LTE%3D
创建网站站点统计,填写个人博客地址信息,生成js代码。把代码加入主题配置文件中
10、创建导航菜单
10.1、创建分类
1 | hexo new page "categories" |
10.2、创建标签
1 | hexo new page "tags" |
10.3、创建友情链接
1 | hexo new page "friends" |
11、文章 Front-matter 介绍
Front-matter 选项详解
Front-matter 选项中的所有内容均为非必填的。但建议至少填写 title 和 date 的值。
title Markdown的文件标题
date 文件创建时的日期时间
author 文章作者,根 _config.yml 中的 author
img 文章特征图,推荐使用图床来做图片的路径.如: https://xxx.com/xxx.jpg
top 推荐文章(文章是否置顶),如果 top 值为 true,则会作为首页推荐文章
coverv 1.0.2版本新增,表示该文章是否需要加入到首页轮播封面中
password 文章阅读密码,如果要对文章设置阅读验证密码的话,就可以设置 password 的值,该值必须是用 SHA256 加密后的密码,防止被他人识破。前提是在主题的 config.yml 中激活了 verifyPassword 选项
toc 是否开启 TOC,可以针对某篇文章单独关闭 TOC 的功能。前提是在主题的 config.yml 中激活了 toc 选项
mathjax 是否开启数学公式支持 ,本文章是否开启 mathjax,且需要在主题的 _config.yml 文件中也需要开启才行
summary 文章摘要,自定义的文章摘要内容,如果这个属性有值,文章卡片摘要就显示这段文字,否则程序会自动截取文章的部分内容作为摘要
categories 文章分类,本主题的分类表示宏观上大的分类,只建议一篇文章一个分类
tags 文章标签,一篇文章可以多个标签
keywords 文章关键字,SEO 时需要
12、网站封面图片
在myblog\themes\matery\source\medias\banner文件夹下,把每日更换背景图片设置为false后,会默认使用”0.jpg”这张图片,更换为自己喜欢的壁纸即可。
13、修改导航栏、页脚及文章卡片标签的颜色
在source/css/matery.css中找到.bg-color,修改即可:我这里调整成了动态渐变
取消蒙版特效搜索.bg-cover:after注释它:
修改页脚: 找到theme/matery/layout/_partial/footer.ejs 文件,修改对应样式为
原主题:#0f9d58、#0f9d58
蓝主题:#33ccff、
壁纸搜索网站: http://www.netbian.com/
免费生成LOGO的网站:https://www.uugai.com/
取色器:https://www.w3cschool.cn/tools/index?name=cpicker
14、今日诗词
今日诗词API需要在使用前将主题配置文件的subtitle的值改为false 地址:https://www.jinrishici.com/#
在themes\hexo-theme-matery\layout_partial\head.ejs文件下添加如下代码:
然后再将/themes/hexo-theme-matery/layout/_partial/bg-cover-content.ejs中的
<%= config.description %>修改为把<%= config.description %>
改为
<%- ‘正在加载今日诗词….‘ %>
npm install hexo-renderer-ejs –save
npm install hexo-generator-json-content –save



