
hexo博客搭建基础概念
之所以搭建这个博客,起初当然是因为写一些技术文章,方便自己以后查阅。这个博客从搭建到现在已经快10年了,很多文章的字里行间其实能看出来当时的稚气,但无论如何,那是我人生的一部分,也是我的成长史。
很多事情,很多技术,自己钻研过,后面用不到了慢慢就淡忘了。总结成文字,省得以后自己再在同样的事情上浪费时间。
hexo博客基础概念
首先,hexo是个静态博客,部署后你能看到的所有东西基本都是由source文件夹内的markdown文件生成的。没有什么魔法,所谓所见即所得。
术语解释
页面(page)
它是你这个博客网站的一个子级域名。
你可以通过hexo new page xxx得到一个叫做xxx的页面,则此时你的网站多了个/xxx的子域名。/xxx/index.md是这个页面的入口文件,相当于index.html。此时你也可以在该目录下创建多个子页面,比如/xxx/xxx.md。
所以说其实hexo不只是能用来做博客,凡是静态网站,只要你能找到合适的模板,它都能胜任。
草稿(draft)
source/_draft/目录下的所有文件都是草稿。
你可以通过hexo new draft xxx得到一篇草稿文件。草稿文件不会被发布到网站上,写完了之后,你可以通过hexo publish xxx将草稿文件发布到网站上。
文章(post)
source/_posts/目录下的所有文件都是你博客的文章。
你可以通过hexo new post xxx得到一篇文章文件。文章文件会被发布到网站上。
Front-matter
Front-matter是文章的头部信息,可以用YAML或者JSON来编写。就这个博客来说,Front-matter就是每个文章顶部的---之间的内容。
它用一堆字段描述了文章的基本信息,比如标题、作者、时间、标签、分类等等。具体可以看Front-matter的官方文档介绍。
一般来说它长这个样子:
1 |
|
一些主题往往也需要在Front-matter中添加一些字段,比如你新建了一个分类页面,你需要在Front-matter中告诉hexo和主题,这个页面是一个分类页面,我需要把主题中的分类页面,使用当前markdown文件渲染出来,简单来说,就是建立一个关联性。比如你有source/categories/index.md长这样:
1 | template: categories |
这段Front-matter告诉hexo,这是一个分类页面,hexo渲染这个页面的时候,会使用主题中的分类页面的样式来渲染。
目录结构
1 | - _config.yml # 网站配置文件,这个是hexo的核心配置文件,里面配置了很多网站的基本信息,比如网站的标题、作者、语言、时间格式等等。 |
主题
hexo博客离不开主题,以前我用matery主题用来好久,可是它现在不维护了,时间长了也看腻了,所以我选择了这个Redefine主题。
理论上来说,hexo本身负责基本博客架构,负责基本的写作,所有的页面渲染部分由对应的主题来完成。themes/目录下的所有文件夹都是主题。下载了主题后,你在_config.yml中添加theme: 主题名字即可使用该主题。从设计上来说是可以达到无缝切换主题的,然而,请往下看:
不同的主题之间并不完全兼容!具体怎么个事,继续往下看
matery主题配置友情链接的方式是在_data目录下创建friends.json,而Redefine,也就是本博客(截至2025年)目前的主题,是在_data目录下创建links.yml。
前者给page页面指定模板的方式是在Front-matter使用layout字段,后者是用template字段。
前者配置文章简介的Front-matter的字段是description,而后者沿用了hexo官方的方案,excerpt字段。
前者支持在Front-matter里面添加keywords字段,用于SEO优化,后者不支持。
不过Redefine主题解决了matery主题的一个问题,就是它把主题的配置文件放在了博客的根目录,叫做_config.redefine.yml,这样的话避免了每次更新主题的时候产生冲突,可以很方便的更新主题。
总结
博客的实现方式有很多种,不过静态博客还需要什么骚操作吗?hexo不就挺好的吗?省下来时间都用来其他事情上不香吗?
大概就是这么些知识点,想到什么再写什么吧,拜拜👋🏻。
- 标题: hexo博客搭建基础概念
- 作者: Aron
- 创建于 : 2025-03-07 16:12:28
- 更新于 : 2025-10-14 09:29:25
- 链接: https://likeso.github.io/2025/03/07/hexo-blog-explain/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。