安装Volta及NodeJS
安装hexo
参见hexo官方文档进行安装:https://hexo.io/zh-cn/docs/
其中提供了两种安装hexo的方式,一种为全局安装,一种为局部安装
-
全局安装
执行npm install -g hexo-cli
因为采用了volta进行nodejs进行版本管理,所以执行上述命令报
执行
volta run --npm install -g hexo-cli
,报
执行
volta install hexo-cli
-
局部安装
局部安装有两种方式- 找一个目录新建一个临时文件夹,在该目录局部安装hexo,比如
D:workspace odejs emp
cd D:\workspace\nodejs\temp npm install hexo npx hexo init D:\workspace\nodejs\fortuneju-blog-hexo
此时便可在fortuneju-blog-hexo目录初始化hexo文件及结构
以后如若执行hexo的命令,先进入到D:workspace odejs emp目录下进行操作- 在
D:\workspace\nodejs\fortuneju-blog-hexo
目录直接执行npx hexo init
两种局部安装方式类似,只不过第一种方式是将hexo安装到指定目录,每次到该目录执行
npx hexo <cmd>
都是读取的该目录下局部安装的hexo;
而第二种方式直接执行npx hexo <cmd>
是每次都会在配置的node_cache目录中临时安装npx,hexo,每次执行完命令就会清空cache,所以每执行一次npx hexo命令就会下载一次npx hexo,所以会比较费时一点。 - 找一个目录新建一个临时文件夹,在该目录局部安装hexo,比如
注意
- 无法执行
hexo xxx
命令请检查是否在环境变量->用户变量的PATH中配置了%VOLTA_HOME%/bin
目录,具体参照上方安装Volta的文章 volta install <package name>
因网络原因安装失败,请参照上方安装Volta的文章进行解决
安装hexo volantis主题
参见volantis官方教程 https://volantis.js.org/v2/getting-started/index.html
官方文档中安装了 Hexo 搜索的依赖包和 stylus 渲染器
- 如果要使用微信分享,则需要安装插件:
npm i -S hexo-helper-qrcode
- 要开启RSS订阅,需要安装插件hexo-generator-feed
在根目录的_config.yml中配置npm install hexo-generator-feed
具体参考:https://www.jianshu.com/p/51cc016a1933#Feed Atom feed: type: atom path: atom.xml limit: 20 theme_config: rss: /atom.xml
- 部署到git服务器,需要安装 hexo-deployer-git
npm install hexo-deployer-git --save
hexo的配置和volantis主题配置
hexo的全局配置是在根目录下的_config.yml
文件中,/themes/volantis/_config.yml
文件是volantis
主题的配置,所有主题配置的内容都可以在hexo的_config.yml
中theme_config:
属性下进行配置,并且会合并并且覆盖主题中的配置。
所以将主题中需要修改的部分放在hexo的配置文件的theme_config
属性下,从而可以不对主题下的所有文件进行修改。
主题配置,hexo的theme_config
配置,Front-matter
(页面上方---分割的部分)的优先级递增,即后面的会覆盖前面的配置。这样便实现theme_config
对所有页面的配置,Front-matter
实现对页面的个性化配置
我的hexo配置文件:https://gitee.com/youfule/youfule-blog-source/blob/master/_config.yml
其中如下部分配置使用了数据文件:https://gitee.com/youfule/youfule-blog-source/tree/master/source/_data
因为scaffolds
文件夹下存放的是模板文件,在新建文章时会使用对应的模块去创建,所以我将Front-matter
所有可配置项在scaffolds
下的模板中进行了列出,再使用的时候可以方便的打开要配置的项。模板文件见:https://gitee.com/youfule/youfule-blog-source/tree/master/scaffolds/
其他
可参考 https://melodyjerry.gitee.io/ 上的一些插件
参考文档 https://www.jianshu.com/p/26a726baf70e