1988 字
7 分钟
-- 次
分类页面使用说明
最后更新于:
📁 功能概述
基于「关于本站」页面的 Bento 网格风格,打造的分类页面。页面包含:
✨ 主要特性
- 顶部标题区域 - 渐变色卡片,带图标和统计徽章
- 概览卡片 - 热门分类、文档总数、分类数量、最近更新
- 分类导航标签 - 从文档 frontmatter 动态读取,居中展示,悬浮动画
- 文档列表 - 无限滚动 marquee 动画,复刻「关于本站」最近文档样式
- 分类统计图表 - 可视化柱状进度条
- 完全可配置 - 通过 frontmatter 控制页面结构
🎨 UI 风格特点
- ✅ 支持亮色/暗色模式自动切换
- ✅ 渐变色卡片和背景
- ✅ 柔和阴影和圆角设计
- ✅ 悬浮上移动画效果
- ✅ 文档列表无限滚动动画(marquee)
- ✅ 入场淡入动画
- ✅ 完全响应式设计
📂 相关文件
页面配置文件 ⭐
位置: content/categories.md
所有页面结构配置都在这里完成。
分类首页模板
位置: themes/hugo-teek/layouts/categories/single.html
主要功能:
- 读取
categoriesConfig配置 - 动态渲染各个区块(标题卡片、概览、标签云、文档列表、统计)
- 内联样式,无需额外 SCSS 文件
分类详情模板
位置: themes/hugo-teek/layouts/taxonomy/category.html
用于点击某个分类后的详情页(如 /categories/博客/),展示该分类下的文档列表。
⚠️ 前置条件:启用 Taxonomy
分类功能依赖 Hugo 的 taxonomy 系统,必须在配置中启用。
编辑 user-template/hugo.toml(或 user-configuration/hugo.toml):
1[taxonomies]
2 category = "categories"
3 tag = "tags"⚠️ 如果
[taxonomies]为空,Hugo 会完全禁用分类系统,分类导航将无法读取任何数据。
🚀 配置说明
重要提示
⚠️ 必须使用 categoriesConfig 作为配置字段名,而不是 categories。
原因:categories 是 Hugo 的保留字段,用于文档分类系统。如果使用 categories 作为配置字段名,会导致模板渲染错误。
页面配置文件结构
所有配置都在 content/categories.md 的 frontmatter 中:
1---
2title: 分类
3url: /categories/
4layout: categories
5description: 浏览所有文档分类,快速找到你感兴趣的内容
6
7categoriesConfig:
8 # 📌 页面标题区域
9 header:
10 icon: "📂" # 标题图标
11 title: "文档分类" # 自定义标题
12 subtitle: "探索知识的海洋" # 自定义副标题
13
14 # 💳 概览卡片配置
15 overview:
16 enabled: true # 是否显示概览区域
17 cards:
18 - type: "gradient" # 渐变卡片(显示热门分类)
19 label: "热门分类"
20 showCount: true # 是否显示文档数
21 - type: "text" # 文字卡片(显示文档总数)
22 label: "文档总数"
23 desc: "篇文档等待探索"
24
25 # 🏷️ 分类导航配置(从文档 frontmatter categories: 动态读取)
26 tags:
27 enabled: true # 是否显示分类导航
28 title: "分类导航" # 区域标题
29 icon: "🏷️" # 标题图标
30 showCount: true # 是否显示各分类的文档数量
31
32 # 📝 文档列表配置(marquee 无限滚动样式)
33 articles:
34 enabled: true # 是否显示文档列表
35 title: "文档列表" # 区域标题
36 icon: "📝" # 标题图标
37 showSubtitle: true # 是否显示文档数量副标题
38 columns: 6 # marquee 显示的文档数量
39
40 # 📊 统计图表配置
41 stats:
42 enabled: true # 是否显示统计区域
43 title: "分类统计" # 区域标题
44 icon: "📊" # 标题图标
45 showBar: true # 是否显示进度条
46
47 # 💬 评论配置
48 comments:
49 enabled: false # 是否显示评论区
50---常用配置示例
1. 简洁模式 - 只显示导航和文档
1# 简洁模式:隐藏概览卡片、统计区和评论区,仅保留标题、分类导航和文档列表
2categoriesConfig:
3 header:
4 icon: "📂" # 标题区域图标
5 title: "文档分类" # 页面主标题
6 overview:
7 enabled: false # 关闭概览卡片区域(热门分类/文档总数/分类数量/最近更新)
8 tags:
9 enabled: true # 开启分类导航标签云
10 showCount: true # 标签旁显示该分类下的文档数量
11 articles:
12 enabled: true # 开启文档列表(marquee 无限滚动)
13 columns: 4 # 文档列表一次性展示 4 篇
14 stats:
15 enabled: false # 关闭分类统计图表
16 comments:
17 enabled: false # 关闭评论区2. 完整模式 - 显示所有区块
1# 完整模式:展示所有区块,适合作为分类主页使用
2categoriesConfig:
3 header:
4 icon: "📚" # 标题区域图标
5 title: "知识库" # 页面主标题
6 subtitle: "分类整理,高效检索" # 标题下方的副标题描述
7 overview:
8 enabled: true # 开启概览卡片区域(显示热门分类/文档总数等)
9 tags:
10 enabled: true # 开启分类导航标签云
11 title: "快速导航" # 自定义标签云区域的标题
12 icon: "🏷️" # 标签云区域标题前的图标
13 articles:
14 enabled: true # 开启文档列表(marquee 无限滚动)
15 columns: 8 # 文档列表一次性展示 8 篇
16 showSubtitle: true # 在区域标题旁显示 "共 N 篇" 数量副标题
17 stats:
18 enabled: true # 开启分类统计图表
19 showBar: true # 统计项显示可视化进度条
20 comments:
21 enabled: true # 开启评论区3. 仅统计模式 - 只看分类分布
1# 仅统计模式:隐藏文档列表和概览卡片,专注展示分类分布统计
2categoriesConfig:
3 header:
4 icon: "📊" # 标题区域图标(仅保留标题头部)
5 overview:
6 enabled: false # 关闭概览卡片区域
7 tags:
8 enabled: true # 开启分类导航标签云,方便切换分类
9 showCount: true # 标签旁显示该分类下的文档数量
10 articles:
11 enabled: false # 关闭文档列表
12 stats:
13 enabled: true # 开启分类统计图表(核心展示内容)
14 showBar: true # 统计项显示可视化进度条,直观对比分类热度
15 comments:
16 enabled: false # 关闭评论区🔧 技术实现
核心 Hugo 模板标签
1// 获取所有分类及数量(从文档 frontmatter categories: 读取)
2.Site.Taxonomies.categories.ByCount
3
4// 获取当前分类下的文档
5.Pages.ByPublishDate.Reverse
6
7// 读取配置
8.Params.categoriesConfig文档列表:marquee 无限滚动
复刻"关于本站"页面的"最近文档"模块,使用 CSS @keyframes marqueeScroll 实现:
- 双组文档卡片拼接,实现无缝循环
- hover 暂停滚动
- 左右渐变遮罩(mask-image)
columns控制显示文档数量(默认 6)
分类导航:动态读取
分类导航标签从 Hugo taxonomy 系统读取,数据来源是所有文档 frontmatter 中的 categories: 字段。模板自动统计每个分类的文档数量并展示。
响应式设计
- > 768px: 概览卡片 4 列,标签云居中
- 768px - 640px: 概览卡片 2 列
- < 640px: 概览卡片 2 列,文档卡片缩小(150px),标签间距减小
📝 文档 Frontmatter 示例
1---
2# 文档 Frontmatter 示例:只需添加 categories 字段即可自动归入对应分类
3title: "文档标题" # 文档标题,会显示在分类页面的文档列表中
4date: 2026-06-17 # 发布日期,用于排序和显示
5categories: # 文档所属分类(Hugo taxonomy 系统自动识别)
6 - "博客" # 分类名称,对应分类页面导航标签中的显示名
7tags: # 文档标签(与分类页面无直接关联,供其他功能使用)
8 - "Hugo"
9 - "CSS"
10---文档发布后,其 categories 会自动出现在分类页面的导航标签中。
🎯 效果预览
根据配置,页面可展示:
- 顶部: 渐变标题卡片 + 分类数量 + 文档总数徽章
- 概览区: 热门分类卡片 + 文档总数卡片 + 分类数量卡片 + 最近更新卡片
- 导航区: 居中排列的分类标签云(从文档 frontmatter 动态读取)
- 文档区: 无限滚动 marquee 样式的文档卡片列表
- 统计区: 各分类的柱状进度条可视化
- 评论区: 可选启用
所有样式都完美支持暗色模式自动切换!
✅ 集成清单
- ✅ 配置文件(
content/categories.md) - ✅ 分类首页模板(
layouts/categories/single.html,含内联样式) - ✅ 分类详情模板(
layouts/taxonomy/category.html,含内联样式) - ✅ 分类导航居中显示
- ✅ 文档列表 marquee 无限滚动
- ✅ 响应式设计
- ✅ 暗色模式支持
- ✅ Hugo taxonomy 已启用(
hugo.toml中[taxonomies])
🚀 开始使用
- 确保
hugo.toml中[taxonomies]已启用(见前置条件) - 编辑
content/categories.md配置页面结构 - 在文档 frontmatter 中添加
categories: ["分类名"] - 访问
/categories/查看效果 - 根据需要调整配置参数
📡
👤
作者:
余温Gueen
🌐
版权:
本站文章除特别声明外,均采用
CC BY-NC-SA 4.0
协议,转载请注明来自
余温Gueen Blog!
推荐使用微信支付

推荐使用支付宝
