我的Hexo博客写作规范

这里记录我自己用的Hexo 博客写作规范。参考Fluid主题的用户手册

更新:俗话说得好,“好记性不如烂笔头”,发现自己时隔多日后想续写博客的时候又得回去翻一些hexo 命令来创建和生成博客文章,因此更新整个完整流程在这里

  • 创建1个新的文章
  • 更新它的URL,tags和categroies
  • 更新它的置顶选项
  • 写文章
  • 保存并发布

创建新的文章

一行命令,

1
hexo new post "新文章标题"  #标题里允许空格和中文

修改文章的URL

由于我对此博客的Fluid主题进行了定制以支持更友好的URL格式, 见文章( {% post_link 定制Fluid主题 定制Fluid主题 %}),因此这里要修改文章标题部分的urlname属性, 建议使用分号连接各单词,例如:

1
2
3
4
---
title: RHEL9 使用Samba
urlname: RHEL9-Samba-FileShare
---

配置tag和category

每篇文章里都可以在它的Front matter区域添加tags和categories属性来标识这篇文章。
categories 目前用于大的分类,tags用于具体的某个标签。例如下面的Front matter区域内容如下。注意[技术笔记, hexo笔记]的写法是描述了上下层级关系(hexo笔记属于技术笔记的子类别),并不是并列,如果想让它属于多个category,可以再加1行类似内容

1
2
3
4
5
6
7
8
9
10
---
title: 我的Hexo博客写作规范
tags:
- hexo
- fluid
categories: # 如下设置会使本文属于 技术笔记->hexo笔记,以及随笔
- [技术笔记, hexo笔记]
- [随笔]
...
---

插入命令

  • 单行使用`命令`的方式
  • 多行命令使用: ```bash 和 ```来包含。

插入图片

这篇文章里写了几种方法,我自己使用第一种。

  1. 在source目录下手动创建文件夹images,然后在images里面手动创建当日日期的文件夹
  2. 将图片手动复制到这个source/images/YYYYMMDD/文件夹中,通过markdown语法![图片标题文字](/images/YYYYMMDD/{image file name})访问它们。
  3. 生成静态文件后,这个images文件夹会被复制到public的根目录下,因此/images/YYYYMMDD/{image file name}就可以访问了。

下面是代码

1
![图片标题](/images/20240325/default.png)

生成的图片:
图片标题

引用站内文章

参考了这篇文章

使用Hexo内置的标签插件(Tag Plugins)中的post_link来实现。

用法:

{% post_link slug [title] %}
slug就是_posts文件夹下需要引用的文章的markdown文件的名字,title可以指定引用的文章需要显示的名字。例如下面的两行代码

1
2
链接1: {% post_link 定制Fluid主题 %}
链接2: {% post_link 定制Fluid主题 我想显示的名字 %}

会生成如下的两行链接:
链接1: 定制Fluid主题
链接2: 我想显示的名字

插入脚注

Fluid 内置了一些 Tag 插件,用于实现 Markdown 不容易生成的样式,以下仅列出两种常用的使用语法,添加在 md 文件中:

1
2
3
4
5
有脚注的正文[^1]

## 参考
[^1]: 参考资料1
[^2]: 参考资料2

上述代码会显示如下。注意##参考部分要放在文章最后边,否则生成的脚注显示会有问题。
有脚注的正文[1]

插入便签

这个很好用。 可选便签的选项有:primary/secondary/success/danger/warning/info/light,对应不同背景颜色。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

{% note primary %}
primary *primary*
{% endnote %}

{% note secondary %}
secondary *secondary*
{% endnote %}

{% note success %}
success 成功 *粗体成功*
{% endnote %}

{% note danger %}
danger *danger*
{% endnote %}

{% note warning %}
warning *warning*
{% endnote %}

{% note info %}
info *info*
{% endnote %}

{% note light %}
light *light*
{% endnote %}

primary primary

secondary secondary

success 成功 粗体成功 斜体成功

danger danger

warning warning

info info

light light

或者使用 HTML 形式:

1
<p class="note note-primary">标签</p>

就可以得到如下显示:

标签

文章隐藏,归档,置顶和排序

这些操作都是在每篇文章的front matter区域添加属性控制来实现。

  • 如果想把某些文章隐藏,不在首页和其他归档分类页里展示,可以在文章开头 front-matter中配置 hide: true 属性。隐藏后依然可以通过文章链接访问,所以可以用于一些需要链接跳转的特殊文章。
  • 如果只是想让文章在首页隐藏,但仍需要在归档分类页里展示,可以在文章开头 front-matter 中配置 archive: true 属性。
  • 如果想手动将某些文章固定在首页靠前的位置,可以在安装 hexo-generator-index >= 2.0.0 版本的情况下,在文章开头 front-matter中配置 sticky 属性:
    1
    2
    3
    4
    5
    6
    7
    ---
    title: 文章标题
    index_img: /img/example.jpg
    date: 2019-10-10 10:00:00
    sticky: 100
    ---
    以下是文章内容
    sticky 数值越大,该文章越靠前,达到类似于置顶的效果,其他未设置的文章依然按默认排序。当文章设置了 sticky 后,主题会默认在首页文章标题前增加一个图标,来标识这是一个置顶文章

发布文章

写完后保存,然后运行如下命令就可以发布了。

1
hexo g

参考

  1. 参考资料1

我的Hexo博客写作规范
https://pub.zangchuantao.com/20240325/my-Hexo-rules.html
作者
Chuantao
发布于
2024年3月25日
许可协议