Skip to content

feat(voltip): 页面加入 Open Graph 与 Twitter 标题描述、首页结构化数据和 llms.txt,可选接入访问统计 - #151

Open
sunerpy wants to merge 1 commit into
mainfrom
voltip/seo-analytics
Open

sunerpy wants to merge 1 commit into
mainfrom
voltip/seo-analytics

Conversation

@sunerpy

@sunerpy sunerpy commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

改动(voltip.firlab.app)

  • 页面元数据:config/shared.ts 的 transformHead 按每个页面自己的标题和描述生成 og:title、og:description、og:url、og:locale、twitter:title、twitter:description(此前线上只有站点级的 og:image)。
  • 结构化数据:中英文首页加入 SoftwareApplication JSON-LD:名称、描述、operatingSystem: "Windows, macOS, Linux, Android"、applicationCategory: UtilitiesApplication、offers 价格 0、license(AGPL-3.0-or-later)、downloadUrl(GitHub releases)、softwareVersion。版本号在构建时从 src/i18n/versions.ts 读取(按文本读取,避免 Vite 去解析根目录的 tsconfig);sync-versions.yml 在 Voltip 版本变化时额外触发 deploy-voltip.yml,deploy-voltip.yml 的 paths 也加入了该文件。
  • /llms.txt:产品说明和中英文主要页面的链接。
  • 对比页入口:侧栏和页脚的「开始使用」加入 /guide/compare(页面内容在 sunerpy/voltip 的配套 PR 里)。中英文站点默认描述加上 Android 和离线识别。
  • 访问统计:Cloudflare Web Analytics(不使用 Cookie)。beacon 只在设置了仓库变量 VOLTIP_CF_BEACON_TOKEN 时加入每个页面的 head;默认为空,不加载任何脚本;格式不对(不是 32 位十六进制)时构建失败。README 写明两种开启方式,只能选一种。

需要仓库所有者操作

现有的 Cloudflare 令牌没有 Web Analytics 权限(/accounts/<id>/rum/site_info/list 返回 403),无法用 API 创建站点。二选一:

  1. Cloudflare 控制台 → Workers & Pages → voltip-docs → Metrics → Web Analytics 下的 Enable。下一次部署起 Cloudflare 自动注入 beacon,不需要设置变量。
  2. 或 Web Analytics → Add a site → 填 voltip.firlab.app → 选 JavaScript snippet,复制 data-cf-beacon 里的 token,然后:
    gh variable set VOLTIP_CF_BEACON_TOKEN --repo sunerpy/firlab --body '<token>'
    gh workflow run deploy-voltip.yml --repo sunerpy/firlab --ref main

合并顺序

先合并 sunerpy/voltip#252(publish-site 会把对比页同步过来),再合并本 PR。

验证

  • 用 voltip 配套分支同步内容后 pnpm build 通过;生成的 HTML 中每页都有新标签,两个首页的 JSON-LD 能被 json.loads 解析(softwareVersion 0.3.1),dist/llms.txt 已输出。
  • 设置占位 token 构建时 beacon 出现在页面 head;设置格式错误的值时构建失败;不设置时页面中没有 cloudflareinsights。
  • 本分支的提交不含同步内容(synced.json 和页面已还原)。

- 每个页面按自己的 title 和 description 生成 og:title、og:description、og:url、og:locale
  和 twitter:title、twitter:description
- 中英文首页加入 SoftwareApplication JSON-LD,版本号读取 src/i18n/versions.ts;
  Voltip 版本变化时 sync-versions.yml 同时重新部署本站
- 新增 /llms.txt,列出产品说明和中英文主要页面
- 侧栏和页脚加入对比页 /guide/compare(页面内容来自 voltip)
- Cloudflare Web Analytics 的 beacon 由仓库变量 VOLTIP_CF_BEACON_TOKEN 控制,
  未设置时不加载任何脚本

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant