Files
hextra/docs/content/blog/v0.12.zh-cn.md
Xin 2e709bf92d fix(docs): correct imageZoom and {markdown_url} config in v0.12 release blog
- Use nested imageZoom.enable: true instead of scalar imageZoom: true
- Use {markdown_url} (snake_case) placeholder matching the actual template-url
  utility key, not {markdownUrl} (camelCase) which would silently not substitute
2026-02-20 23:35:44 +00:00

219 lines
7.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Hextra v0.12"
date: 2026-02-20
authors:
- name: imfing
link: https://github.com/imfing
image: https://github.com/imfing.png
tags:
- Release
---
Hextra v0.12.0 带来了丰富的新功能,包括页面上下文菜单、图片缩放、全新设计的标签页等,同时提供全面的 WCAG 2.2 AA 无障碍改进和大量错误修复。
<!--more-->
## 升级指南
对大多数站点而言没有破坏性变更。使用 [Hugo Modules](https://gohugo.io/hugo-modules/use-modules/) 更新:
```bash
hugo mod get -u github.com/imfing/hextra
```
## 亮点
- 页面上下文菜单,可复制/查看 Markdown 源码
- 全新设计的标签页短代码,支持单独命名和图标
- Markdown 图片点击缩放
- GoatCounter 分析支持
- 桌面端隐藏主侧边栏选项
- 通过 GitInfo 显示最后修改作者
- 禁用上一篇/下一篇导航选项
- 内置归档页面,按时间顺序列出博客文章
- 术语表短代码和布局
- 从 llms.txt 中排除页面/章节
- 移动端侧边栏排序和标签与 `menu.main` 对齐
- 通过 CSS 变量覆盖支持稳定的内容宽度
- 全面的 WCAG 2.2 AA 无障碍改进
## 新功能
### 页面上下文菜单
![页面上下文菜单](https://github.com/user-attachments/assets/0b55bee9-6f4d-4e1d-9461-60c40208cb6c)
页面上下文菜单提供下拉按钮,可将页面内容复制为 Markdown 或查看原始 Markdown 源码。随着越来越多用户将文档输入生成式 AI 工具,快速获取干净的 Markdown 变得越来越有用。通过模板变量(`{url}``{title}``{markdown_url}`)添加自定义链接,可以在菜单中直接集成“询问 AI”快捷方式或其他功能。
要使用“以 Markdown 查看”和 `{markdown_url}` 功能,请在站点配置中启用 Markdown 输出格式:
```yaml {filename="hugo.yaml"}
outputs:
page: [html, markdown]
section: [html, rss, markdown]
```
然后配置页面上下文菜单:
```yaml {filename="hugo.yaml"}
params:
page:
contextMenu:
enable: true
links:
- name: "Ask AI"
url: "https://example.com?content={markdown_url}"
icon: "sparkles"
```
### 标签页重设计与图标支持
[标签页短代码]({{% relref "docs/guide/shortcodes/tabs" %}})经过重新设计。现在可以直接在每个 `tab` 短代码上设置标签名称,可选的 `icon` 参数可在标签文字前显示图标。之前的语法仍然支持。
```md
{{</* tabs */>}}
{{</* tab name="Photos" icon="photograph" */>}}管理和整理您的照片库。{{</* /tab */>}}
{{</* tab name="Music" icon="music-note" */>}}浏览和播放您喜爱的曲目。{{</* /tab */>}}
{{</* tab name="Videos" icon="film" */>}}观看和串流视频内容。{{</* /tab */>}}
{{</* /tabs */>}}
```
![带图标的标签页](https://github.com/user-attachments/assets/afa4cb8f-615c-4f01-8ae4-81a64c9ce391)
### 图片缩放
通过新的配置选项,启用 Markdown 图片的点击缩放功能,基于 [medium-zoom](https://github.com/francoischalifour/medium-zoom) 实现。
```yaml {filename="hugo.yaml"}
params:
imageZoom:
enable: true
```
### GoatCounter 分析
在现有的 Google Analytics、Umami 和 Matomo 集成之外,新增 [GoatCounter](https://www.goatcounter.com/) 分析的内置支持。
### 隐藏主侧边栏
新的 Front Matter 参数允许在桌面端隐藏主侧边栏,使内容页面获得全宽显示。
```yaml {filename="content/my-page.md"}
---
title: My Page
sidebar:
hide: true
---
```
### 最后修改作者
使用 Hugo 的 GitInfo 功能,在"最后更新"日期旁显示最后提交的作者。
```yaml {filename="hugo.yaml"}
params:
displayUpdatedAuthor: true
```
![最后修改作者](https://github.com/user-attachments/assets/275b7177-e089-483c-abb6-6d8f16616b9b)
### 禁用上一篇/下一篇导航
在站点范围内禁用上一篇/下一篇导航按钮:
```yaml {filename="hugo.yaml"}
params:
page:
displayPagination: false
```
### LLMs.txt 排除
通过在 Front Matter 中设置 `llms: false`,将单个页面或整个章节从 `llms.txt` 输出中排除。
```yaml {filename="content/private-page.md"}
---
title: "Private Page"
llms: false
---
```
### 归档页面
新的内置 `archives` 布局按年份分组,以时间线形式展示博客文章,每篇文章标题后内联显示标签。
```yaml {filename="content/archives/_index.md"}
---
title: Archives
layout: archives
---
```
![归档页面](https://github.com/user-attachments/assets/262cc0fa-e0af-4a50-8c3d-4465059418b8)
### 术语表
站点级[术语表]({{% relref "docs/guide/shortcodes/term" %}}),提供专用列表页面和用于内联定义的 `term` 短代码。
## 无障碍
全面的 WCAG 2.2 AA 无障碍改进 (#924)
- 所有页面添加跳转到内容链接和 ARIA 地标角色
- 所有交互组件(主题切换、标签页、侧边栏、文件树、下拉菜单、搜索、菜单)添加 ARIA 属性
- 标签页和主题切换的键盘导航方向键、Enter、Escape
- 支持 `prefers-reduced-motion` 和全局 `focus-visible` 样式
- 15 个新的 i18n 无障碍键,在全部 21 个语言环境中提供完整翻译
- 将所有硬编码的英文 `aria-label` 字符串替换为 i18n 查找
## 使用体验优化
- 改进表格可读性样式
- 标题支持 Markdown 属性
- 多语言章节着陆页的活动链接检测改进
- 卡片短代码支持可选的图片 `alt` 参数
- OpenGraph 元数据支持页面资源包图片
- 内容宽度默认保持一致,支持通过 CSS 变量覆盖自定义布局
## 修复
- 修复 render-link 中 `relref` 基础前缀重复问题
- 修复嵌套在步骤中的标签页渲染
- 移动端侧边栏排序和标签与 `menu.main` 对齐
- 侧边栏中遵循 `search.enable` 设置
- 移动端下拉菜单中遵循 `toc` 页面参数
- 增强 FlexSearch 匹配高亮和安全的 DOM 操作
- 修复卡片副标题定位
- 处理子路径部署中 OG 图片路径的前导斜杠
- 修复 FlexSearch 返回结果页数少于预期的问题
- 将 Umami 分析的默认文件改为 `script.js`
- 修复 Hugo v0.156.0+ 的 RSS 作者查找 (`.Site.Params.Author`)
## 文档与 i18n
- 添加意大利语本地化
- 链接 KaTeX 文档
- 将 details 短代码文档更新为尖括号语法
## 贡献者
此版本由 11 位新贡献者共同参与完成:
- [@ghac101](https://github.com/ghac101) - Umami 分析修复、禁用上一篇/下一篇导航
- [@pmarrapese](https://github.com/pmarrapese) - 标题 Markdown 属性支持
- [@Bubbler-4](https://github.com/Bubbler-4) - details 短代码文档
- [@bloovis](https://github.com/bloovis) - FlexSearch 结果计数修复
- [@AntoninPvr](https://github.com/AntoninPvr) - 卡片副标题定位修复
- [@illia-v](https://github.com/illia-v) - 移动端目录和搜索切换修复
- [@gallochri](https://github.com/gallochri) - 意大利语本地化
- [@MatheusFlausino](https://github.com/MatheusFlausino) - LLMs.txt 排除
- [@daniseijo](https://github.com/daniseijo) - 最后修改作者功能
- [@confusedkernel](https://github.com/confusedkernel) - 归档页面
- [@Fenyutanchan](https://github.com/Fenyutanchan) - Hugo v0.156.0 RSS 作者兼容性修复
同时感谢回归贡献者 [@KStocky](https://github.com/KStocky)、[@ldez](https://github.com/ldez)、[@kowyo](https://github.com/kowyo)、[@torbjornbp](https://github.com/torbjornbp)、[@yuri1969](https://github.com/yuri1969) 和 [@PrintN](https://github.com/PrintN) 的持续贡献。
---
**完整变更日志**: https://github.com/imfing/hextra/compare/v0.11.1...v0.12.0