next主题的自定义文件

0-前言

记录一下hexonext主题的一些文件是在哪些位置,以防下次想改又要去找,至于怎么改,丢给文本模型跑就行了

NexT version 8.21.1

1-位置

1>自定义样式

next主题下面的_config.yml

1
2
3
4
5
6
7
8
9
10
11
12
custom_file_path:
#head: source/_data/head.njk
#header: source/_data/header.njk
#sidebar: source/_data/sidebar.njk
#postMeta: source/_data/post-meta.njk
#postBodyStart: source/_data/post-body-start.njk
#postBodyEnd: source/_data/post-body-end.njk
#footer: source/_data/footer.njk
#bodyEnd: source/_data/body-end.njk
#variable: source/_data/variables.styl
#mixin: source/_data/mixins.styl
#style: source/_data/styles.styl
1
2
#style: source/_data/styles.styl
用于更改栏目的透明度、鼠标悬停时的效果、优化手机端的体验都可以从这里改
1
2
#variable: source/_data/variables.styl
圆角设置等
1
2
#bodyEnd: source/_data/body-end.njk
页面上新增标签按钮啥的

值得注意的是,source/_data/body-end.njk等这些是blog下面的source不是next主题下的source

1
你博客的绝对路径\blog\source\_data\body-end.njk

其他的我没用到,暂时就不说了

2>固有的样式更改

Hexo NexT 主题侧边栏

1
你博客的绝对路径\blog\themes\next\layout\_partials\sidebar\site-overview.njk

3>置顶、排序、分页

1
2
#如果改了根目录下的config里的order_by还不行的话可以试试这个
你博客的绝对路径\blog\node_modules\hexo-generator-index\lib\generator.js

官方hexo-generator-index已更新

参考文章:Hexo根据更新时间修改文章排序机制

注意失效情况

这个是更改插件,如果你打算使用Actions自动部署,那他就会失效,你需要下载

4>侧边栏菜单目录

如果改语言文件,那就所有语言yml都得改

如果改官方的源码,那可能不好用Actions自动部署了

我有一计,直接插入主题配置文件的_config.ymlmenu:

1
2
3
4
5
6
7
8
9
10
11
menu:
"我的链接": /mylinks/ || fa fa-sitemap #第一个是目录,第二个是图标


#可以自己在blog\themes\next\layout\page.njk或者其他地方写兼容的代码
#mylinks兼容文件在blog\themes\next\layout\_partials\page\links.njk -->[所以mylinks应该是默认兼容的]
mylinks:
- nickname: Emby
avatar: /images/emby.jpg
site: http://
info: xxxx

值得注意的是如果指定mylinks/mylinks/目录下的index.md文件需要设定对应的type参数,详细原因可以分析如下的文件和目录

blog\themes\next\layout\page.njk文件

blog\themes\next\layout\_partials\page\目录

1
2
3
4
---
title: 我的链接
type: "links"
---

5>自定义特效

可以导入或者自定义一些js放到这里,然后用1>自定义样式引用即可,可以在全局引用,或者单独正文引用。

1
blog\source\js\xxx.js

待续。。。。。