對於跨越十年的任何站點,對永久鏈接結構進行許多更改的情況並不少見。 在早期 WordPress,這並不少見 永久鏈接結構 將博客文章設置為包含年、月、日和文章名稱的路徑:
/%year%/%monthnum%/%day%/%postname%/
除了有一個不必要的長 網址,還有其他幾個問題:
- 潛在訪問者在另一個網站或搜索引擎上看到指向您文章的鏈接,但他們不會訪問,因為他們看到了您文章撰寫的年、月和日。 即使這是一篇令人驚嘆的常青文章……由於永久鏈接結構,他們也不會點擊它。
- 搜索引擎可能認為內容不重要,因為它 分層地 遠離主頁的幾個文件夾。
在優化我們客戶的網站時,我們建議他們將帖子永久鏈接結構更新為:
/%postname%/
當然,像這樣的重大變化可能會導致挫折,但我們已經看到,隨著時間的推移,優勢遠遠大於風險。 請記住,更新您的永久鏈接結構不會將訪問者重定向到那些舊鏈接,也不會更新您內容中的內部鏈接。
如何更新 WordPress 內容中的永久鏈接
當您進行此更改時,您可能會發現這些帖子的搜索引擎排名有所下降,因為重定向鏈接可能會降低反向鏈接的一些權限。 可以提供幫助的一件事是正確重定向進入這些鏈接的流量並修改您內容中的鏈接。
- 外部鏈接重定向 – 您必須在您的站點上創建一個重定向,以搜索正則表達式模式並將用戶正確重定向到適當的頁面。 即使您修復了所有內部鏈接,您也會希望對訪問者點擊的外部鏈接執行此操作。 我寫過如何添加正則表達式 (正則表達式) 在 WordPress 中重定向,特別是關於 如何進行 /YYYY/MM/DD/ 重定向.
- 內部連結 – 更新永久鏈接結構後,您的現有內容中仍然可能有指向舊鏈接的內部鏈接。 如果您沒有設置重定向,它們將導致您獲得 404 沒有發現錯誤。 如果您確實設置了重定向,它仍然不如實際更新鏈接好。 內部鏈接已被證明有利於您的有機搜索結果,因此減少重定向的數量是保持內容清潔和準確的重要一步。
這裡的問題是您需要查詢您的帖子數據表,識別任何看起來像 /YYYY/MM/DD 的模式,然後替換該實例。 這就是正則表達式完美髮揮作用的地方……但您仍然需要一個解決方案來遍歷您的帖子內容,然後更新鏈接的實例——而不會弄亂您的內容。
值得慶幸的是,有一個很好的解決方案, WP Migrate 專業版. 使用 WP Migrate Pro:
- 選擇您要更新的表,在本例中, wp_posts. 通過選擇單個表,您可以最大限度地減少該過程將佔用的資源。
- 插入您的正則表達式。 這對我來說需要一些工作才能使語法正確,但我在 Fiverr 上找到了一位出色的正則表達式專家,他們在幾分鐘內就完成了正則表達式。 在“查找”字段中,插入以下內容(當然是為您的域定制的):
/martech\.zone\/\d{4}\/\d{2}\/\d{2}\/(.*)/
- (.*) 是一個變量,它將從源字符串中捕獲 slug,因此您必須將該變量添加到 Replace 字符串中:
martech.zone/$1
- 您必須單擊替換字段右側的 .* 按鈕,讓應用程序知道這是一個正則表達式 查找和替換.
- 這個插件最好的功能之一是你可以在執行之前預覽更改。 在這種情況下,我可以立即看到要對數據庫進行哪些編輯。
使用該插件,我能夠在一分鐘左右的時間內更新我的內容中的 746 個內部鏈接。 這比查找每個鏈接並嘗試替換它要容易得多! 這只是這個強大的遷移和備份插件中的一個小功能。 這是我的最愛之一,它列在我的清單上 最適合企業的 WordPress 插件.
披露: Martech Zone 是...的會員 WP遷移 並在本文中使用它和其他附屬鏈接。