VitePress作为基于Vue和Vite构建的静态站点生成工具,为Markdown文档提供了强大的页面级配置能力。其中,Frontmatter是控制页面标题、布局、导航、SEO信息以及主题行为的重要机制。合理使用Frontmatter,可以让开发者针对不同页面实现精细化管理;而掌握Frontmatter禁用策略,则能够解决部分页面隐藏组件、关闭功能或优化展示效果的问题。VitePress+1
什么是VitePress Frontmatter
Frontmatter通常位于Markdown文件顶部,通过三个短横线包裹YAML配置内容,用于描述当前页面的元数据和行为配置。
基本格式如下:
Markdown--- title: VitePress配置指南 description: 介绍VitePress Frontmatter的使用方法 --- # 页面内容
VitePress会解析Frontmatter中的字段,并将其应用到当前页面。相比全局配置文件,Frontmatter具有更高的优先级,可以覆盖站点级或主题级配置,实现单页面控制。VitePress
例如:
Markdown--- title: 自定义页面标题 sidebar: false --- 文章正文内容
该页面会使用自定义标题,同时关闭默认侧边栏。
VitePress常用Frontmatter配置详解
1. title配置页面标题
title用于设置当前Markdown页面标题。
示例:
YAML--- title: VitePress快速入门 ---
它会影响:
-
页面HTML标题
-
导航显示名称
-
SEO搜索结果中的标题信息
如果未设置title,VitePress通常会根据Markdown中的一级标题生成页面标题。
2. description优化SEO描述
description用于生成页面描述信息,对搜索引擎优化非常重要。
示例:
YAML--- description: 深入介绍VitePress Frontmatter配置方式和页面控制技巧 ---
生成后的HTML通常会包含:
HTMLname="description" content="深入介绍VitePress Frontmatter配置方式和页面控制技巧">
对于技术博客、文档站点来说,合理设置description能够提升页面搜索展示效果。VitePress
3. layout控制页面布局
VitePress默认主题提供多种布局模式:
YAML--- layout: doc ---
常见布局包括:
doc
默认文档布局:
YAML--- layout: doc ---
适合技术文章、API文档等内容页面。
home
首页布局:
YAML--- layout: home ---
通常用于项目介绍页,可以配合hero和features配置。
page
纯页面布局:
YAML--- layout: page ---
适用于完全自定义结构的页面。
VitePress中Frontmatter禁用策略
实际开发过程中,并不是所有页面都需要完整显示默认主题组件。例如:
-
登录页面不需要导航栏
-
单独展示页面不需要侧边栏
-
宣传页面不需要文章目录
-
特殊页面不需要更新时间
这时可以通过Frontmatter进行功能禁用。
禁用导航栏 navbar
默认情况下,VitePress会显示顶部导航栏。
关闭方式:
YAML--- navbar: false ---
效果:
-
隐藏顶部导航
-
页面更加适合作为独立展示页
适用场景:
-
登录页
-
活动页面
-
全屏展示页面
禁用侧边栏 sidebar
默认主题通常显示文档侧边栏。
关闭:
YAML--- sidebar: false ---
适用于:
-
博客文章
-
单页介绍
-
自定义页面
例如:
Markdown--- title: 关于我们 sidebar: false --- 这里是不需要目录导航的独立页面。
禁用右侧目录 outline
VitePress默认会根据标题生成页面大纲。
关闭:
YAML--- outline: false ---
如果只想显示指定级别:
YAML--- outline: level: [2,3] ---
适用于内容较长但不希望显示过深目录的文章。
禁用更新时间 lastUpdated
默认情况下,文档页底部可能显示更新时间。
关闭:
YAML--- lastUpdated: false ---
适合:
-
固定内容页面
-
产品介绍页
-
不希望展示更新时间的文档
禁用编辑链接 editLink
如果项目启用了编辑链接,可以针对单页面关闭:
YAML--- editLink: false ---
常见应用:
-
公告页面
-
自动生成页面
-
不允许修改的内容
禁用页脚 footer
关闭底部Footer:
YAML--- footer: false ---
适合制作:
-
独立Landing Page
-
全屏展示页面
-
嵌入式页面
Frontmatter自定义字段使用方法
除了VitePress内置配置外,还可以定义自定义字段。
例如:
YAML--- author: 张三 category: 前端开发 version: 1.0 ---
然后通过:
vue{{ $frontmatter.author }}
访问。
也可以在Vue组件中:
vue