WordPress 孤兒頁面盤點與修復指南

經營一個 WordPress 網站三五年後,後台文章數從幾十篇長到幾百篇,你以為都好好地被 Google 收錄了,實際上有一批頁面早就斷了線——沒有任何一篇文章、選單或側邊欄連到它們。這些就是孤兒頁面(Orphan Pages):頁面本身存在、有網址、甚至可能被索引,卻像一棟沒有道路通往的房子,使用者進不去,搜尋引擎的爬蟲也幾乎抓不到。

孤兒頁面不會跳出紅色錯誤、不會讓網站掛掉,所以最容易被忽略。它的傷害是安靜的:拿不到首頁傳遞下來的權重、抓取頻率變低、好不容易寫的內容形同隱形。對一個靠自然流量的 WordPress 站來說,這等於默默漏掉一塊本來該有的排名。

這篇會帶你把站內的孤兒頁面盤點出來、判斷哪些值得救、哪些該合併或刪掉,並用 WordPress 後台就能做的方式重新接回站內結構。重點不只是「加一條內鏈」這麼簡單,而是建立一套讓孤兒頁面不再悄悄累積的流程。

孤兒頁面指的是哪一種頁面,判定標準在哪

孤兒頁面是站內沒有任何內部連結指向的頁面。嚴格定義是「零內鏈」——包含首頁、選單、分類頁、文章內文連結,全部都沒有連到它。只要有任何一條內鏈指進來,這個頁面就脫離孤兒狀態。

判定上有兩個容易誤解的地方要先講清楚。第一,被收錄在 sitemap(網站地圖)裡不等於不是孤兒。sitemap 只是幫 Google 知道這個網址存在,但 Google 自己也說明過,它發現與重新抓取頁面的主要方法是「順著已知頁面上的連結爬過去」。一個只待在 sitemap、卻沒有任何內鏈的頁面,抓取優先序很低,也接收不到站內傳遞的權重。

第二,掛在導覽選單裡的頁面通常不算孤兒,因為選單是全站性連結。但「不是孤兒」和「內鏈做得好」是兩回事——來自相關文章內文的脈絡連結,比單純掛在選單上更有價值,因為它傳遞的是有主題關聯的權重,也更能幫爬蟲理解這頁在講什麼。

還有一種延伸情況值得留意。如果文章 B 只被另一篇孤兒文章 A 連到,而 A 本身沒有任何站內入口,那麼 B 實質上也是孤兒——它雖然有一條內鏈,卻接在一條斷掉的鏈子上,從首頁順著連結還是走不到。盤點時不能只看「內鏈數是不是零」,要看這條連結能不能真的從站內主結構走到。

WordPress 為什麼特別容易長出孤兒頁面

孤兒頁面大多不是錯誤,而是網站成長過程的副作用。在 WordPress 上,有幾個結構性原因讓它比一般網站更容易發生。

舊文章被新內容遺忘:兩三年前發的一篇文,當時沒從其他文章連過去,後來寫新文也沒想到要回連,它就慢慢沉到時間軸底部,只剩分類頁和 sitemap 還知道它在。

改版或重整分類、選單:把選單精簡掉、把某個分類合併或刪除時,原本靠那個分類頁當入口的文章就斷了線。WordPress 的分類與標籤頁是很多文章的主要內部入口,動到它們很容易製造一批孤兒。

從別的平台搬站:從 Blogger、Wix 或舊版 WordPress 搬過來時,網址結構改變、舊內鏈失效,部分頁面在搬遷後就失去了原本的連結脈絡。

附件頁與自動產生的頁面:WordPress 預設會替每張上傳的圖片生成一個「附件頁」(attachment page),這類頁面通常沒有任何內鏈指向、內容又單薄,是孤兒頁面的大宗。許多 SEO 外掛可以把附件頁直接導回原圖或設為 noindex,建議開站初期就處理。

用頁面建構器或外掛拉出來的獨立頁面:用 Elementor、Beaver Builder 或活動外掛拉一個促銷頁、報名頁,常常是「先建好網址、之後再想怎麼接」,結果就一直懸在那裡。

自訂文章類型(CPT)與作品集、團隊成員頁:很多佈景主題會註冊自訂文章類型,但沒有對應的封存頁或內鏈機制,這些內容很容易整批變成孤兒。

認清這些來源的意義在於:孤兒頁面不是「修一次就沒事」,而是只要網站持續成長、持續改版,它就會持續產生。所以重點是先盤點現況,再建立預防流程。

盤點孤兒頁面的三種方法,從免費到自動化

找孤兒頁面的核心邏輯都一樣:拿一份「站內爬蟲順著內鏈能走到的網址」清單,去比對另一份「實際存在或有人造訪的網址」清單,兩者的差集就是嫌疑孤兒。差別只在你用什麼工具湊出這兩份清單。以下三種方法由免費手動到付費自動,可依站台規模選用。

方法一、用 Search Console 比對 Screaming Frog 爬取結果

這是零成本的做法,大約花三十到四十五分鐘。原理是把 Google 已索引的頁面,和爬蟲順著內鏈爬到的頁面做比對。

第一步、到 Google Search Console 的「索引 → 網頁」,篩選狀態為「已建立索引」,匯出完整 CSV。這份是 Google 認得的頁面清單。

第二步、用 Screaming Frog(免費版可爬 500 個網址)輸入網域開始爬取,爬完後到「Internal → All」匯出。這份是順著站內內鏈走得到的網址。

第三步、把兩份清單丟進 Excel 或 Google 試算表比對。出現在 Google 索引、卻沒出現在爬取結果裡的網址,就是孤兒頁面。

這個方法的限制是:它只找得到「Google 已經索引」的頁面。剛發布還沒被收錄、或被設成 noindex 的頁面不會出現,所以對新站或剛搬完的站要搭配其他方法補齊。

方法二、用 Screaming Frog 比對 sitemap 與實際爬取

如果想找得更乾淨,可以改用 sitemap 來當「應該存在的完整網址清單」。WordPress 上的 Yoast SEO 或 Rank Math 都會自動產生 sitemap,網址通常在網域後加上 sitemap_index.xml。

第一步、在 Screaming Frog 切到 List Mode,貼上你的 sitemap 網址,匯入所有應該存在的網址。

第二步、切回 Spider Mode 對網域做一次完整爬取,匯出爬到的內部網址。

第三步、比對兩份清單。出現在 sitemap、卻沒被爬到的網址,就是沒有內鏈的孤兒頁面。

這個方法的好處是不依賴 Google 是否已索引,只要頁面進了 sitemap 就會被檢查到,適合用來抓那些「有發布、但 Google 還沒理它」的頁面。

方法三、用 WordPress SEO 外掛的內鏈報告

如果不想開試算表手動比對,WordPress 生態裡有幾個外掛可以直接列出孤兒清單。Yoast SEO 付費版與 Rank Math 都有內部連結的統計欄位,能在文章列表看到每篇的「接收內鏈數」;專做內鏈的工具型外掛(例如 Link Whisper)則直接提供「孤兒文章」報告,掃一遍站台就把零內鏈的文章和頁面列出來,並附上發布日期與接收內鏈數。

外掛法的限制要先講明:它通常只看「站內內鏈關係」,看不到 Google 索引或外部反向連結那一面。所以對追求完整的站,理想做法是外掛報告先抓出大宗,再用方法一或方法二補上外掛漏掉的角落。中小型網站光靠一個內鏈外掛的報告,多半就足以應付日常維護。

找到之後先分流,不是每一頁都要救

盤點完最常見的錯誤,是把所有孤兒頁面一律加上內鏈。這是浪費力氣——有些孤兒是刻意的,有些根本該刪掉。動手之前先用四個分支判斷每一頁該怎麼處理。

值得救、直接加內鏈:內容相關、品質還行、和目前經營方向一致的頁面,加上內鏈把它接回站內結構,是最直接的處理。

先更新內容再加內鏈:主題有價值但資訊過時的頁面,先把內容更新到堪用,再加內鏈。把流量導到一篇明顯過期的文章只會傷體驗。

合併或重導:和另一篇內容高度重複的孤兒頁面,應該把獨有的有用資訊搬到主頁面,再用 301 把孤兒網址重導過去,避免兩篇互相稀釋。

刪除或設 noindex:薄內容、測試頁、重複頁、對訪客沒有價值的頁面,與其硬救不如刪掉讓它自然回 404,或設為 noindex 不再進搜尋結果。像廣告到達頁、電子報訂閱確認頁這類「本來就不該被搜到」的頁面,刻意維持孤兒並設 noindex 才是正解,不要去加內鏈。

判斷時可以多帶一個訊號進來:這頁有沒有外部反向連結。如果一個準備刪掉的頁面其實掛著別人給的反向連結,那就別直接刪,改成 301 重導到相關頁面,把這份連結權重保留下來。

用內鏈把值得救的頁面接回站內

確定要救的頁面後,真正的工作是「從對的地方連過去」,而不是隨便補一條。WordPress 後台就能完成整個流程。

第一步、找出適合的來源頁面。在站內搜尋與孤兒頁面同主題的既有文章,優先挑「有自然流量、Google 會比較快回來重新抓取」的頁面當來源——因為改動要被看見,得等爬蟲再次經過那一頁。Screaming Frog 或內鏈外掛都能依流量或內容相似度幫你找出候選來源。

第二步、在來源文章內文裡加上脈絡連結。直接編輯該篇文章,把孤兒頁面的網址放進語意自然的句子裡。錨點文字要像句子本來的一部分,引導讀者繼續往下看,而不是硬塞關鍵字。過度優化、堆滿關鍵字的錨點反而會降低內鏈的效果。

第三步、依頁面重要性決定連幾條。脫離孤兒狀態只需要一條內鏈,但要真的把排名拉起來,一條通常不夠。重點頁面建議從三到五個高權重、有流量的相關頁面連進來;一般支援型頁面兩到三條即可。相關性比數量更重要——幾條主題對得上的脈絡連結,勝過一堆勉強湊出來的連結。

第四步、改完回頭驗收。加完內鏈後重新跑一次 Screaming Frog,或再看一次內鏈外掛的孤兒報告,確認原本的孤兒頁面現在確實收到了內鏈。改完不驗收,等於不知道有沒有真的接上。

WooCommerce 商品與特殊頁面的處理方式

電商站的孤兒問題比一般部落格更棘手,因為商品會不斷上下架。下架商品如果只是被隱藏、沒有妥善處理連結,很容易變成一批孤兒商品頁。

正確做法是:停售商品連同所有指向它的內鏈一起移除,並回傳 404 或 410 狀態碼,讓它自然退出搜尋結果。沒有把指向已下架商品的內鏈清掉,是電商孤兒頁面最常見的成因。如果這個商品頁累積了不錯的反向連結、而且有新版替代品,可以保留頁面、更新內容說明商品已停售並導向新品,或直接 301 重導到新品頁,把連結權重留住。

收款頁、結帳完成頁、訂單確認頁這類交易流程中的頁面,本質上就不該被搜尋引擎收錄,維持孤兒並設 noindex 是合理的,不需要為它們補內鏈。這裡只是客觀說明它們在內鏈結構中的定位,實際金流串接與付款設定屬於另一個範疇,不在這篇討論。

至於自訂文章類型(作品集、案例、團隊成員),如果佈景主題沒有自動產生封存頁或列表頁,最好在相關內容頁或一個彙整頁裡手動接上內鏈,否則它們會整批懸空。

讓孤兒頁面不再悄悄累積的發布與稽核節奏

盤點與修復是補破洞,真正省力的是讓洞不要一直破。把內鏈變成發布流程的固定一環,比事後稽核划算得多。

最有效的時機是「按下發布之前」。每寫完一篇新文,先找出兩到三篇相關的既有文章,從它們連到新文、也讓新文連回它們。這一步只花幾分鐘,卻能確保新內容一上線就接在站內結構裡,不會變成下一個孤兒。內鏈型外掛可以在這個步驟自動建議候選連結,加快判斷。

站台結構本身也要設計成「會自動幫你連」。WordPress 預設每發一篇文,就會從部落格首頁與封存頁自動產生內鏈,這是內建的好習慣;但如果用了大量自訂結構或頁面建構器,就得自己確認對應的列表頁、分類入口有沒有到位。

搬站與改版要有計畫。任何網址變動都用 301 把舊頁重導到新頁,別讓改版本身製造孤兒。

最後是定期稽核。每個月或在每次大量改版、搬站之後跑一次孤兒盤點,把漏網的接回來。對內容量大的站,這種季度級的例行檢查能讓內鏈結構長期維持健康,不會等到流量莫名下滑才回頭找原因。

把孤兒頁面救活,本質上是在修復網站把權重傳遞出去的能力。先盤點、再分流、再從對的來源接上脈絡內鏈,最後把內鏈寫進每一次發布的習慣裡。下次發新文之前,先花三分鐘想清楚這篇要從哪幾篇連過來、又連回哪幾篇——這比任何事後補救都更能讓你的 WordPress 內容真正被搜到。

相關文章
標籤: WordPress SEO, Screaming Frog, 網站架構, 內部連結, 孤兒頁面