Goosequill 评论系统配置参数速查
作者:Goose 和 Quill
3 分钟阅读
目录
Goosequill 目前通过 siteConfig.comments 支持两种评论提供方:
giscuswaline
同一时间只应配置其中一种。
配置结构
在 src/config.ts 中设置 comments:
comments: { provider: "giscus" | "waline",}Giscus
最小示例
comments: { provider: "giscus", repo: "owner/repo", repoId: "R_kgDOExample", category: "Announcements", categoryId: "DIC_kwDOExample",}参数
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
provider | "giscus" | 是 | — | 选择 Giscus |
repo | string | 是 | — | GitHub 仓库,格式为 owner/name |
repoId | string | 是 | — | Giscus 仓库 ID |
category | string | 是 | — | GitHub Discussions 分类名 |
categoryId | string | 是 | — | GitHub Discussions 分类 ID |
mapping | "pathname" | "url" | "title" | "og:title" | "specific" | "number" | 否 | "pathname" | 页面与讨论串的映射方式 |
strict | "0" | "1" | 否 | "0" | 是否严格匹配映射结果 |
reactionsEnabled | "0" | "1" | 否 | "1" | 是否启用评论区反应表情 |
emitMetadata | "0" | "1" | 否 | "0" | 是否输出讨论元数据 |
inputPosition | "top" | "bottom" | 否 | "top" | 输入框位置 |
theme | string | 否 | 仅作兜底 | 明暗主题共用的兜底主题名 |
theme_light | string | 否 | "light" | 浅色模式下使用的 Giscus 主题 |
theme_dark | string | 否 | "dark" | 深色模式下使用的 Giscus 主题 |
lang | string | 否 | "en" | Giscus 界面语言 |
loading | "lazy" | "eager" | 否 | "lazy" | 加载策略 |
说明
- 在 Goosequill 中,
repo、repoId、category、categoryId是硬性必填项。 - Goosequill 会把 Giscus 的主题与站点的
data-theme和系统明暗模式保持同步。 - 如果未设置
theme_light或theme_dark,会先回退到theme,再回退到light或dark。
Waline
最小示例
comments: { provider: "waline", serverURL: "https://your-waline-server.example.com",}参数
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
provider | "waline" | 是 | — | 选择 Waline |
serverURL | string | 是 | — | Waline 服务端地址 |
lang | "zh" | "zh-CN" | "zh-TW" | "en" | "en-US" | "jp" | "jp-JP" | "pt-BR" | "ru" | "ru-RU" | "fr-FR" | "fr" | "vi" | "vi-vn" | "es" | "es-MX" | 否 | "en" | Waline 界面语言 |
emoji | string[] | false | 否 | false | 表情源列表,或关闭表情 |
meta | ("nick" | "mail" | "link")[] | 否 | ["nick", "mail", "link"] | 表单里显示的字段 |
requiredMeta | ("nick" | "mail" | "link")[] | 否 | [] | 必填字段 |
login | "enable" | "disable" | "force" | 否 | "enable" | 登录模式 |
wordLimit | number | [number, number] | 否 | 0 | 评论字数限制 |
pageSize | number | 否 | 10 | 每页评论数 |
search | boolean | 否 | false | 是否启用管理端搜索 |
reaction | boolean | string[] | 否 | false | 是否启用反应,或自定义反应图片 |
pageview | boolean | 否 | false | 是否启用阅读量统计 |
noCopyright | boolean | 否 | false | 是否隐藏 Waline 版权信息 |
noRss | boolean | 否 | false | 是否关闭 RSS 输出 |
说明
- Goosequill 当前使用
window.location.pathname作为 Waline 的页面路径标识。 - 站点主题会被转换成 Waline 的
dark布尔值,并在主题切换时同步更新。 - 除了
provider之外,serverURL是唯一硬性必填项。
建议起步配置
如果你只想先跑起来:
- 已经使用 GitHub Discussions,就优先选 Giscus。
- 想自托管后端、希望表单控制更多,就选 Waline。