SuperAPI AI 工具集

contentstack-kickstart

通用与其它

查看项目

更新于 10-16 05:03

技能介绍

用途:当需要修改应用与 Contentstack 的通信方式(交付、预览、区域、主机),或调整页面内容类型与 Live Preview 字段绑定假设时使用。

主要能力与用法:所有栈配置与数据获取集中在 lib/contentstack.ts。stack 由 @contentstack/delivery-sdk 的 contentstack.stack() 创建,使用 API key、delivery token、environment、region、可选自定义 host 及 live_preview 选项(preview token、preview host、启用标志)。initLivePreview() 调用 @contentstack/live-preview-utils 的 ContentstackLivePreview.init(),参数含 ssr: false、mode: "builder"、栈 SDK/配置、栈详情、客户端 URL 参数和编辑按钮设置。getPage(url) 查询 page 内容类型,用 QueryOperation.EQUALS 过滤 url,并以 lib/types.ts 中 Page 类型返回首条条目;isPreview 为真时通过 contentstack.Utils.addEditableTags() 添加可编辑标签。

预览与生产路由:app/page.tsx 中,若 isPreview(NEXT_PUBLIC_CONTENTSTACK_PREVIEW === "true"),渲染客户端组件 components/Preview.tsx 并传 path="/";否则在服务端用 getPage("/") 获取并渲染 components/Page.tsx。

区域与端点:区域解析使用 @timbenniks/contentstack-endpoints 的 getRegionForString,getContentstackEndpoints(region, true) 提供该区域的默认交付、预览和应用主机。解析失败则回退到 NEXT_PUBLIC_CONTENTSTACK_REGION。

可选环境覆盖:NEXT_PUBLIC_CONTENTSTACK_CONTENT_DELIVERY 覆盖默认交付主机;NEXT_PUBLIC_CONTENTSTACK_PREVIEW_HOST 覆盖预览 URL 主机;NEXT_PUBLIC_CONTENTSTACK_CONTENT_APPLICATION 覆盖 initLivePreview 中 clientUrlParams.host;NEXT_PUBLIC_CONTENTSTACK_IMAGE_HOSTNAME 用于 next/image(见 next.config.mjs)。

类型与对齐:CSLP 实时预览的条目与字段结构在 lib/types.ts,条目/字段上的 $ 保存 data-cslp 与 parent 属性,需与种子栈的模块化区块和页面字段保持一致。应用假定栈由 contentstack/kickstart-stack-seed(“Kickstart Stack”)播种,token 与 scope 见 README.md;更改内容类型或字段 UID 需同步更新代码与类型。限制:收费、价格、平台、效果等事实暂未提供。