门户网站
dropin的脚本 使大量的鬼会员功能的工作在任何主题。
使用
Ghost自动在所有运行Ghost 4或 更高。
或者,Portal可以通过添加这个在Ghost之外的页面上启用 脚本:
<script defer src="https://unpkg.com/@tryghost/portal@latest/umd/portal.min.js" data-ghost="https://mymemberssite.com"></script>
这个 data-ghost 属性期望Ghost站点的URL,这是Portal通过Ghost api处理您站点的会员数据所需的唯一输入。
自定义触发按钮
默认情况下,脚本在页面的右下角添加一个默认浮动触发按钮,用于触发屏幕上的弹出。
方法添加自定义触发器 data-portal 属性到任何HTML
元素。设置其值以选择特定的
门户页面,
例如 data-portal="signup".
共享模式可以打开 data-portal="share" (或 #/share)。
默认(零配置)用法:
<button type="button" data-portal="share">Share</button>
在那些 {{ghost_head}} , Portal将自动解析来自DOM标签的元数据:
- URL:规范URL(或当前URL回退)
- 标题:打开图形标题(或文档标题回退)
- 图片:Open Graph图片(或Twitter图片备用)
缺少预览元数据的故障排除:
- 验证模板包括
{{ghost_head}}. - 验证呈现的HTML包含规范+ OG/Twitter标记。
脚本补充道 gh-portal-open 和 gh-portal-close 类到自定义触发器
以反映弹出状态。
看到 门户设置文档 了解为您的站点定制Portal的方法。
开发
从monorepo根目录运行Portal的构建监视器和其他公共应用程序:
pnpm dev:public
门户会在您编辑时重新生成并提供服务
http://localhost:2368/ghost/assets/portal/portal.min.js,哪个主题页上
开发站点负载。 pnpm dev 从开始时开始提供构建。
构建
在这个目录中创建一个产品压缩包
umd/portal.min.js :
pnpm build
测试
从该目录中,运行单元测试一次或在监视模式下使用:
pnpm test
pnpm test:watch
鬼影e2e测试
传送门主要是通过Ghost的剧作家测试 e2e/
目录中。从monorepo根目录运行它们:
pnpm test:e2e
释放
补丁发布是自动的。当传送门打开时 main, CI将下一个补丁版本发布到npm,并清除jsdeliver缓存。使用主/次线的站点会收到没有Ghost版本的补丁。
如果你发布的新代码不应该立即上线 总是 发布时使用次要或主要版本。
有意的小版本或大版本:
- 从干净的树枝上跑
pnpm ship并选择一个小调或大调版本 - 合并提交到的版本
main - 等待Ghost发布新的默认版本行
pnpm ship 同时更新软件包版本和Ghost的默认门户版本。
版权与许可
鬼子基金会版权所有2013-2026 麻省理工学院的许可.