01
Schema-as-code
用 TypeScript 定義內容模型,讓欄位結構能進入版本控制、型別檢查與 CI/CD。
defineType({
name: "campaign",
type: "document",
fields: [
headline,
hero,
markets
]
})
Headline
夏季品牌企劃
Hero image
已設定焦點與替代文字
Markets
zh-TW / en
Sanity CMS 顧問與導入
當內容需要跨網站、App 與市場反覆使用,Sanity 把內容模型、編輯介面與發布流程放進同一套可客製的工作空間。
Model / Workspace
Workspace anatomy
內容模型 / TypeScript
Schema 已載入
defineType({
name: "campaign",
type: "document",
fields: [
defineField({ name: "headline", type: "string" }),
defineField({ name: "hero", type: "image" }),
defineField({ name: "markets", type: "array" }),
],
})Result
同一組欄位定義可進入版本控制,並銜接型別檢查與 CI/CD 流程。
Custom Studio
01
用 TypeScript 定義內容模型,讓欄位結構能進入版本控制、型別檢查與 CI/CD。
02
用 React 製作適合品牌、資料格式或內部流程的編輯介面。
03
依角色、內容關係與日常任務重組 Studio 的導覽和工作入口。
04
把必填、格式、關聯與發布前條件寫進內容模型,提早看見問題。

Collaboration
多人可以在同一份內容上工作,並看見彼此的變更。
把討論和待辦留在內容旁,不必另外拼湊回覆脈絡。
保留內容變更的歷史,方便團隊理解修改來源與演進。
把一批跨文件變更整理成發布單位,再依權限完成檢視與核准。
Structured reuse
結構化欄位與 Portable Text 讓文字、媒體和關聯保留語意,不必把整張頁面綁死在單一前端。
首頁、服務頁、案例與跨語系內容共享品牌與 SEO 欄位。
會員訊息、教學、方案說明與介面文案由同一內容來源提供。
商品資料、規格、故事與 Portable Text 內容依通路重新組合。
活動模組、受眾版本與市場素材不必為每個頁面重做一份。
AI governance
Schema-aware 不代表無人監督。權限、變更檢視與人工核准仍是發布流程的一部分。
以 Schema 和內容脈絡協助處理內容任務,仍受角色與權限邊界約束。
在 Studio 內提供與欄位結構相關的協作能力,結果仍需被檢視。
依角色限制可讀、可改與可發布的範圍,避免把 AI 當成額外後門。
重要變更進入既有審核與發布流程,不把產生內容等同於自動上線。
Decision guide
Tenten delivery
01
先看現有內容、使用者、審核責任與發布路徑。
02
把頁面拆成可重用的內容物件、關係與驗證規則。
03
依角色建立導覽、自訂輸入元件與編輯預覽。
04
串接網站與服務,整理內容轉換、匯入和重導策略。
05
驗證欄位、權限、發布和前端呈現,再交接文件與日常操作。
從既有 CMS 搬遷、日常編輯到 AI 權限,先釐清導入後真正會改變的工作。