WordPress 內容搬家後的 SEO 盤點表:媒體、內部連結與舊網址檢查
WordPress 內容搬家到 Next.js、Astro、Hugo 或其他靜態網站後,真正的工作通常不是「頁面能打開」就結束。舊站累積多年的文章、圖片、分類、內部連結與搜尋結果,都需要被整理成一套可驗證的 SEO 盤點流程,避免搬家後流量慢慢流失。
UCAMC 目前也是從舊 WordPress Blog 延伸到 Next.js 內容站,因此這份清單不是一次性的技術筆記,而是日後每次整理舊文、補新文、調整分類時都可以拿出來重跑的網站經營檢查表。
1. 先確認 canonical URL 策略
搬家後最重要的是先定義「正式網址」長什麼樣子。以 UCAMC 現在的規則為例:
/blog是文章列表頁。- 單篇文章 canonical URL 是 root-level
/{slug}。 - 舊 WordPress 轉換過來的 ID-prefixed URL,例如
/123-example-post,才需要 301 到/example-post。 - 新文章不需要建立
/blog/{slug}這種通用 redirect。
這件事要先寫清楚,因為後續所有 sitemap、內部連結、Open Graph URL、舊網址 redirect 都會依照 canonical 策略設計。若團隊沒有先定義規則,很容易出現同一篇文章同時被 /blog/post、/post、/123-post 多個網址索引的問題。
2. 檢查 frontmatter 是否完整
靜態網站通常會把文章資訊放在 Markdown frontmatter。每篇正式文章至少應該有:
title: 文章標題
slug: article-slug
date: '2026-06-13T09:10:00+08:00'
modified: '2026-06-13T09:10:00+08:00'
excerpt: 摘要
categories:
- WordPress
tags:
- SEO
author: UCAMC
seoTitle: 搜尋結果用標題
seoDescription: 搜尋結果用描述
draft: false
搬家時有些舊文章可能缺摘要、分類大小寫不一致、日期格式不統一,或是還保留 WordPress 匯出的 HTML 片段。建議先補齊影響列表頁與 metadata 的欄位,再逐步整理正文,不要為了追求一次整理完而大量改 slug。
3. 圖片與媒體不要只看「能不能顯示」
舊 WordPress 文章常見的媒體問題包括:
- 圖片仍連到舊站 uploads,但舊站未必會永久保留。
- 圖片沒有 alt text,列表頁或社群分享缺乏語意。
- 外部圖片尺寸過大,造成文章頁載入慢。
- Cloudinary 或其他圖床網址被搬家腳本錯誤改寫。
UCAMC 的規範是:Cloudinary 圖片連結不可任意改寫。若要整理圖片,優先補 coverAlt、確認圖片可存取、檢查是否有明顯破圖;不要在不確定授權與來源的情況下批次替換舊圖。
4. 內部連結要導向正式文章網址
搬家後最容易漏掉的是舊文中的內部連結。建議搜尋以下型態:
- 舊 WordPress 完整網址,例如
https://old-site.example.com/123-post/。 /blog/{slug}這類已不再作為單篇 canonical 的路徑。- 指向不存在分類、tag、附件頁的連結。
- 裸露 URL:直接把網址顯示在文章中,沒有說明文字。
好的內部連結應該用讀者能理解的文字,例如:
- AI Agent 每日 Route 與 SEO 檢查:讓技術 Blog 的更新可被驗證
- 短篇動畫製作檢查清單:從腳本、分鏡到上架的輕量工作流
- AI Agent 網站營運工作流:讓技術 Blog 每天自己變好
這樣不只對搜尋引擎比較清楚,也讓讀者更容易在站內繼續閱讀。
5. sitemap 與 robots 要用真實路徑驗證
/sitemap.xml 和 /robots.txt 不應該只檢查檔案是否存在,還要確認內容合理:
- sitemap 內是否包含首頁、
/blog、分類頁與所有非 draft 文章。 - 新文章是否出現在 sitemap,且網址是 canonical root-level 路徑。
lastModified是否使用文章modified或date。- robots 是否允許搜尋引擎抓取,並指向正確 sitemap。
如果使用 Next.js App Router 的 app/sitemap.ts 與 app/robots.ts,每次新增文章後都應該透過 production build 或 local production server 重新驗證,而不是只看開發模式。
6. Redirect 只驗證真正需要保留的舊網址
舊 WordPress 搬家常見格式是 /{id}-{slug}。這種網址如果已被搜尋引擎收錄,應該回傳 301 到正式文章網址。
以新文章 wordpress-content-migration-seo-checklist 為例,可以驗證:
curl -I http://127.0.0.1:3000/123-wordpress-content-migration-seo-checklist
預期結果是 301,並且 Location 指向 /wordpress-content-migration-seo-checklist。反過來說,若 /blog/wordpress-content-migration-seo-checklist 不存在,不應該自動視為錯誤,因為它不是 UCAMC 新文章的 canonical 規則。
7. 發佈後的最小驗證清單
每次完成內容搬家或新增文章後,至少跑一次這份清單:
-
npm run lint通過。 -
npm run build通過。 - 首頁
/可開啟,最新文章有出現。 - Blog 列表
/blog可開啟,文章摘要與分類正常。 - 新文章
/{slug}可開啟,metadata 與內文正常。 - 代表性分類頁可開啟,例如
/category/wordpress。 -
/sitemap.xml包含新文章 canonical URL。 -
/robots.txt指向 sitemap。 - legacy ID-prefixed URL 301 到 root-level 文章。
讓搬家變成長期經營流程
WordPress 搬家最怕的是「技術上搬完,內容上沒有人照顧」。真正可長期經營的內容站,應該把每次新增文章、整理舊文、補分類、檢查 redirect 都變成可重複執行的日常流程。
對 UCAMC 來說,這份 SEO 盤點表會和每日網站營運、內容品質循環、動畫與前端筆記一起累積。當每篇文章都能被正確索引、被站內連結串起來、被讀者理解,就不只是保留舊 Blog,而是在建立新的技術內容品牌資產。