📚 YinyangSEO Academy 課程路線 · 第 1 章 — 代理式網站與高效 SEO。 此技能屬於第 1 章儲存庫的一部分。請先複製或下載整個儲存庫,並在執行前將其提供給您的代理作為上下文。儲存庫會在課程期間持續更新。
Landing Generator · 服務 × 區域
接受藍圖並在客戶網站的儲存庫中產生實體檔案。預設使用 Astro(簡單檔案路由、預設 SSG,SEO 理想),但輸出也可調整為 Next.js 或純 MDX。
輸入
藍圖/{商家-代號}/← 來自web-blueprint-generator。- 目標資料夾 ·
src/pages/(Astro)或app/(Next.js)。 - 語言 · 預設
es-ES。 - 模式 ·
dry-run(列出將產生的項目)或apply(寫入檔案 + 提交)。
流程
- 載入藍圖 並驗證
url-map.yaml、頁面樣板與結構化資料樣板是否存在。 - 針對
url-map.yaml中的每一組服務 × 區域組合:- 使用商家實際資料解析變數(
{服務}、{區域}、{城市}等)。 - 注入每個區域最少數量的獨特內容(請勿重複;請參閱 QA)。
- 加入對應的 JSON-LD 結構化資料。
- 根據
internal-linking.yaml計算內部連結。 - 在儲存庫的正確路徑寫入檔案。
- 使用商家實際資料解析變數(
- 產生支柱頁面(
/服務/{代號}/),列出涵蓋的區域。 - 產生
sitemap.xml(或設定@astrojs/sitemap),包含優先權。 - 產生一致的
robots.txt。 - 將變更提交到新分支:
feat/landings-{服務}-{N}-區域。 - 顯示摘要: 建立的頁面數、HTML 總大小、結構化資料驗證結果、模式為乾執行或已套用。
工具
- 客戶儲存庫上的檔案系統(讀取/寫入/編輯)。
- 用於提交的 Git。
- Astro +
@astrojs/sitemap+astro-seo。 - 用於產生每個區域獨特內容區塊的 LLM(含長度和獨特性防護措施)。
- schema-dts 用於在寫入前驗證 JSON-LD。
輸出
src/pages/{服務}/{區域}.astro ← 每組組合一個檔案
src/pages/服務/{服務}.astro ← 支柱頁面
src/data/areas-served.json ← 區域的真實資料來源
public/sitemap.xml ← 重新產生
public/robots.txt
以及一個乾淨的提交訊息:
feat(landings): 產生 N 個服務 × 區域落地頁
- 服務:cerrajero-24h
- 區域:12 個
- 支柱頁面已更新
- Sitemap 已重新產生(項目數:13)
- JSON-LD 結構化資料已使用 schema-dts 驗證
品質 / QA
- 內容獨特性: 每個落地頁與其同類頁面相比,必須有 ≥ 30% 的獨特 token(Jaccard 相似度 < 0.7)。若不符合,重新產生變動區塊。
- 結構化資料驗證: 若 JSON-LD 未通過驗證,則不寫入任何檔案。
- 強制內部連結: 每個落地頁至少有 3 個指向同服務其他區域的內部連結,以及 1 個指向支柱頁面的連結。
- Lighthouse 預算: 產生後委派給
landing-qa-runner處理。 - 成本/時間: 若單次執行超過 50 種組合,則發出警告。
後續用途
→ 作為 landing-qa-runner 的輸入,該工具會對所有產生的 URL 執行 Playwright + Lighthouse-CI,若不符合繼承自前三名的預算,則阻擋合併。