title: { type: String, required: true, desc: "H1 Title / SEO Title" }
description: { type: String, max_length: 160, desc: "Meta description for Zensical social card" }
created: { type: Date, format: "YYYY-MM-DD HH:mm" }
last_modified: { type: Date, format: "YYYY-MM-DD HH:mm" }
lang: { type: String, enum: ["zh-TW", "en-US", "ja-JP"] }
type: { type: String, enum: ["tutorial", "guide", "reference", "concept"] }
status: { type: String, enum: ["new", "update", "deprecated"] }
version: { type: String, desc: "Semantic versioning or change type" }
author: { type: String, default: "Jase" }
reviewers: { type: Array, default: [] }
notes: { type: Array, desc: "Internal editor notes" }
ga_views: { type: Integer, default: 0, desc: "GA4 total page views" }
feedback: { type: Integer, default: 0, desc: "Net feedback score (Up minus Down) from zensical feedback widge" }
products: { type: Array, enum: ["EC", "POS", "WMS"] }
modules: { type: Array, desc: "Matching CYB admin console leftsidebar menu" }
sites: { type: Array, enum: ["TW", "JP", "US"] }
audiences: { type: Array, enum: ["admin", "developer", "clerk"] }
difficulty: { type: String, enum: ["beginner", "intermediate", "advanced"] }
tnb: { type: String, enum: ["trunk", "branch"] }
plans: { type: Array, enum: ["專業", "進階", "高手", "專業 PLUS", "進階 PLUS", "高手 PLUS", "企業"] }
cyb_extensions: { type: Array, default: ["APP MARKET", "AUTOMATION", "CHANNEL BRIDGE", "CHAT BOX", "EXPRESS", "NOW!", "STORE PAL", "TICKET"] }
intents: { type: Array, desc: "Search intent/User goal" }
features: { type: Array, desc: "Specific system features mentioned" }
prerequisites: { type: Array, desc: "Required reading/tasks/documents" }
related: { type: Array, desc: "Related documents" }
tags: { type: Array, desc: "SEO internal keywords" }
acoiv: { type: String, enum: ["activate", "configure", "operation", "integration", "venture"] }
apis: { type: Array, desc: "List of API endpoints" }
devices: { type: Array, enum: ["desktop", "mobile", "tablet"] }
ui_components: { type: Array, desc: "UI elements mentioned" }
paths: { type: Array, desc: "admin console navigation routes mentioned" }
layouts: { type: Array, enum: ["classic", "draggable"] }
wp_url: { type: Array, desc: WordPress docs urls }
permalink: { type: String, desc: "Slug for Zensical URL" }
comments: { type: Boolean, default: false }
search:
exclude: { type: Boolean, default: false }
icon: { type: String, desc: "Lucide icon (e.g., lucide/braces)" }
hide: { type: Array, enum: ["navigation", "toc", "feedback"] desc: "Visual elements to hide on the page"