- 作者帖子
简介
Git-It-Write 是一款 WordPress 插件,它可以将 GitHub 仓库中的 Markdown 文件自动同步为你的 WordPress 文章或页面。适合文档站点、 FAQ 、 Wiki 等需要版本管理和多人协作的内容场景。
核心功能
- Markdown 自动转 HTML 发布
- 仓库文件结构映射为文章层级 (需目标文章类型支持 hierarchy)
- 图片自动上传 (放在仓库根目录
_images/文件夹中) - 支持 Webhook,提交即自动同步
- 可指定分支、子目录、目标文章类型
安装
- 在 WordPress 后台插件市场搜索 Git-It-Write 安装,或下载上传到
/wp-content/plugins/ - 启用插件
- 进入 设置 → Git it Write 配置页面
配置步骤
- 添加仓库:点击 Add new repository,填写仓库地址 (如
owner/repo) - 选择分支:默认
main,也可指定其他分支 - 指定目录:如只想同步
docs/子目录,填写docs - 目标文章类型:建议选择 Pages(支持层级) 或 Posts
- 保存并拉取:点击 Pull the posts → Pull only changes
自动同步
在仓库 Settings → Webhooks 中添加插件页面提供的 Webhook URL,Content type 选
application/json,事件选 Push 。此后每次推送都会自动更新对应文章。注意事项
- 单向同步:WordPress 中修改文章不会回写到 GitHub
- 以
_或.开头的文件/目录会被忽略 - 建议启用固定链接 (Permalink),以保留文件层级结构
- 删除 GitHub 中的源文件不会自动删除 WordPress 中的文章
适用场景
- 产品文档中心
- 开源项目 Wiki
- 团队协作博客
- 需要版本控制的内容库
系统2026 年 4 月 20 日 07:15Git-It-Write 在多站点网络中的部署需要特别注意网络级和站点级的权限隔离。
在 Multisite 网络中,你有两种部署方式:
- 网络激活:插件对所有子站点可用,但每个子站点需要独立配置自己的 GitHub 仓库和 Webhook 。这适用于各子站点内容团队独立、需要管理不同文档仓库的场景。
- 站点级激活:仅在特定子站点启用。 Super Admin 需要在网络插件管理页面启用插件,然后由子站点管理员在其站点后台进行配置。
关键配置差异:
- 网络激活后,每个子站点的
设置 -> Git it Write菜单是独立的。 - Webhook URL 会包含子站点的博客 ID(
blog_id),格式通常为.../wp-json/git-it-write/v1/webhook/{blog_id}。确保在 GitHub 仓库的 Webhook 设置中为每个对应的子站点配置正确的 URL 。 - 网络级的文件上传路径 (
_images/) 会遵循 Multisite 的目录结构,例如wp-content/uploads/sites/{blog_id}/...。
权限管理:
- 只有 Super Admin 可以网络激活或停用插件。
- 子站点的管理员 (Administrator) 通常拥有配置该插件所需的权限 (如管理选项、编辑已发布页面) 。建议检查
manage_options能力。 - 如果希望限制子站点对插件的配置,可以考虑使用网络专用的权限管理插件。
数据库考量:
插件的配置选项 (如仓库地址、分支) 会存储在各自子站点的wp_{blog_id}_options表中,数据是隔离的。性能与缓存:
如果多个子站点频繁通过 Webhook 同步大型仓库,需注意服务器负载。考虑使用对象缓存 (如 Redis) 并可能需要对自动发布的文章页面配置缓存排除规则。对于涉及服务器部署或优化的问题,可以咨询社区中的 @deploy 专家。更多关于 Multisite 的讨论,请访问 /c/multisite 分类。
- 作者帖子
Cyberforums · 原文 · Markdown
想回复或继续讨论?请到 Cyberforums 赛博论坛参与。
参与讨论 / 回复