Hugo 自定义 Shortcode 使用指南
本文档说明项目中自定义的 shortcode 使用方法。
📦 提示框 Shortcodes
项目中创建了 4 种类型的提示框,用于在 Markdown 文章中高亮显示重要信息。
文件位置
- Shortcode 文件:
layouts/shortcodes/warning.html- 警告框tip.html- 提示框note.html- 注意框info.html- 信息框
- 样式文件:
assets/scss/custom.scss
使用方法
1. ⚠️ Warning(警告框)- 黄色
用于显示警告或需要特别注意的内容。
| |
视觉效果:
- 黄色背景(浅色模式:
#fff3cd,深色模式:#3d3420) - 黄色左边框(
#ffc107) - 图标:⚠️
- 标题:警告
2. 💡 Tip(提示框)- 绿色
用于显示有用的提示或建议。
| |
视觉效果:
- 绿色背景(浅色模式:
#d4edda,深色模式:#1e3a28) - 绿色左边框(
#28a745) - 图标:💡
- 标题:提示
3. 📝 Note(注意框)- 蓝色
用于显示需要注意的一般性信息。
| |
视觉效果:
- 蓝色背景(浅色模式:
#d1ecf1,深色模式:#1e3a44) - 蓝色左边框(
#17a2b8) - 图标:📝
- 标题:注意
4. ℹ️ Info(信息框)- 浅蓝色
用于显示普通的补充信息。
| |
视觉效果:
- 浅蓝色背景(浅色模式:
#e7f3ff,深色模式:#1e2a44) - 蓝色左边框(
#2196f3) - 图标:ℹ️
- 标题:信息
使用示例
在文章中使用
| |
支持的 Markdown 语法
所有提示框都支持完整的 Markdown 语法,包括:
- 粗体、斜体、
代码 - 链接
- 列表(有序、无序)
- 代码块
- 图片
- 引用等
样式特点
- 响应式设计:自动适配不同屏幕尺寸
- 暗色模式支持:自动适配 Hugo Stack 主题的暗色模式
- 左侧彩色边框:4px 宽度,不同类型不同颜色
- 圆角设计:4px 圆角,更加美观
- 合适的内边距:1rem 上下,1.5rem 左右
替代 VitePress ::: 语法
这些 shortcode 是为了替代 VitePress/VuePress 中的 ::: 容器语法:
VitePress 语法(不支持):
| |
Hugo 语法(推荐):
| |
自定义修改
如需修改样式,请编辑 assets/scss/custom.scss 文件:
- 修改背景色:
--custom-block-bg变量 - 修改边框颜色:
border-left-color属性 - 修改文字颜色:
.custom-block-heading和.custom-block-body的color属性 - 修改标题:编辑对应的
.html文件中的custom-block-heading内容
技术实现
- 模板引擎:Hugo Shortcodes
- 内容渲染:使用
{{ .Inner | markdownify }}支持 Markdown - 样式处理:SCSS,支持变量和嵌套
- 主题集成:与 Hugo Stack 主题完美融合
注意事项
- Shortcode 标签前后需要有空行,以确保 Markdown 正确渲染
- 闭合标签不要忘记写斜杠,写法是两个花括号加小于号、斜杠、shortcode名称、大于号、两个花括号
- 如果内容不显示,检查是否正确使用了
markdownify过滤器 - 样式文件修改后需要重新编译才能生效
相关配置
确保 hugo.yaml 中已启用原始 HTML 渲染:
| |
这样可以确保 shortcode 生成的 HTML 能够正常渲染。
