文章元数据与内容控制

• 本文约1501字,阅读大致需要4分钟 • 指南

在日常博客维护中,常会遇到早期技术文章失效、部分个人随笔不宜纳入站内检索、或长篇内容需分篇连载等实际需求。Chaos在Front Matter 中提供了若干字段以调控页面的呈现与索引行为。

推荐的Front Matter结构

Chaos推荐使用TOML或YAML 格式组织文章元数据。以下为兼顾搜索引擎检索与内容分类的典型配置:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
---
title: "文章标题"
date: 2026-09-15T10:00:00+08:00
description: "简明扼要的摘要,会作为页面的meta description输出,便于搜索引擎收录呈现。"
categories: ["指南"]
tags: ["系统设计", "Web"]
series: "Chaos主题指南"
# 内容控制开关(可选):
deprecated: false
searchHidden: false
noindex: false
# 可交互代码参数(可选):
code_vars:
  - name: host
    default: "router.example.net"
    desc: "网关主机名"
---

内容控制开关

1. 标记过时内容(deprecated)

对于成文较早、技术方案已废弃或配置已失效的文章,可显式声明:

deprecated: true # 或outdated: true

实际效果

  • 降低检索排序:站内全文搜索算法会自动降低该文章的相关性得分(降权75%),避免早期方案影响对有效解答的检索。
  • 状态视觉标识:在站内搜索结果列表中,该文章标题后会附加 [已过时] 标签。

2. 排除站内检索(searchHidden)

如果希望内容不参与站内技术检索。声明:

searchHidden: true # 或search: false

实际效果

  • 该文章不编入站内离线搜索索引。
  • 文章仍正常发布,展示于首页与分类列表,并保留在 sitemap.xml 中,外部搜索引擎仍可正常收录。

3. 避免搜索引擎索引(noindex)

若内容虽然仍然可以公开,但希望不被搜索引擎收录,则可声明:

noindex: true

实际效果

系列文章(series)

为长篇连载指定统一的 series 名称:

series: "Chaos主题指南"

Chaos会自动关联同系列文章,并在Open Graph元数据中注入系列信息。配合站点的taxonomy配置,读者可通过/series/chaos-主题指南/查阅完整篇目列表。

可交互代码参数(code_vars)

对于包含具体网络配置、系统管理命令或安装部署脚本的文章,可在Front Matter中通过 code_vars 声明允许读者动态调整的参数:

1
2
3
4
5
6
7
code_vars:
  - name: host
    default: "router.example.net"
    desc: "网关主机名"
  - name: ip
    default: "192.0.2.1"
    desc: "网关管理IP"

实际效果

  • 参数联动面板:主题自动在首个匹配代码块上方挂载可折叠的参数面板,并将代码块内对应的默认值标记为可交互的 <var class="code-var">。
  • 全局同步与复制:读者在面板或代码块中修改参数后,全文代码块即时同步,右上角复制按钮自动复制替换后的真实内容。
  • URL参数共享:非默认修改自动同步至URL查询字符串(如 ?host=node1.example.org),便于分享与预设填入。
  • 局部代码块免替换:通过 ```text {code_vars="false"} 可保留固定的输出或真实日志。

详细交互机制与配置规范参见代码语法高亮、交互参数与Mermaid图表。

扩展Markdown语法

自定义标题锚点ID

默认情况下,Hugo会根据标题文本自动生成锚点ID。若标题包含特殊字符或需要稳定、简短的引用路径,可在标题后显式指定:

### 核心架构与设计哲学 {#architecture}

渲染后对应的HTML元素将直接附带 id="architecture" 属性,便于在正文中通过 [跳转至架构](#architecture) 精确链接。

列表页摘要截断(<!--more-->)

在Markdown中单独放置一行 <!--more-->:

1
2
3
4
5
这是文章的导言部分,会完整显示在首页和列表页的摘要中。

<!--more-->

这是正文的后续展开部分,进入文章详情页后方可阅读。

藉此可自主控制摘要的截断位置,避免整篇长文在列表页完整展开,以维持版面整洁。