修改了 weixiaoduo.com 的永久鏈接格式,從原來的 /%category%/%post_id% 的格式修改為 %postname% ,以便於 url 變得更有意義一些,當然這個前提是 weixiaoduo.com 所有的文章標題都是被收錄的網站的名稱,不需要另外再去重新編輯 slug 之類的。

以上兩個不同的 URL 格式的差別,只有在文章頁 (single) 才顯示,分類頁及其它頁面基本都是一樣的,所以無需做過多的修改,另外再安裝 Dean's Permalinks Migration 插件更是連 301 都不需要做。

安裝這個插件後,會自動讀取當前的 URL 格式,保存一下然後去修改永久鏈接格式,當訪問舊地址時會自動 301 跳轉到新地址。

本以為一切都順風順水的,但當檢查地址是否全部正確的時候,發現很多以前的老文章訪問時,頁面的內容結構會由讀取 single.php 文件變成讀取 page.php 文件,而訪問附件的地址時則是正常的,但 url 不會跳轉,注意看以下兩個截圖的地址欄:

進一步檢查這些顯示有錯誤的文章內容時,發現這些文章內容是完全正常的,隨意添加一點內容再更新文章時,頁面依然顯示錯誤的。

於是又將文章內容裏的圖片刪掉,重新添加一下圖片,再保存時顯示就正常了,基本上判定為圖片上傳的時候有問題。而出現錯誤的文章發佈時間集中在 2010 年 1 月份之前,回想在最早開始給 Reeoo 添加內容時,因為嫌每個文章上傳一次圖片麻煩,所以有時會一下子上傳一堆圖片,然後寫每個文章時直接複製 HTML 代碼過去修改,以達到更快速簡便的效果。

再加上最早的時候使用的是 WordPress2.8 的版本,之後經歷過幾次大版本升級,數據的升級可能不完善,於是就導致了這個問題的出現。

確定為圖片上傳的問題後,改為去檢查媒體庫,發現裏面有接近 200 來張的圖片是沒有附屬的,也即是在數據庫裏這些圖片沒有被指定附加在哪個文章裏,於是隻需要重新為這些圖片指定附屬的文章,問題完美解決。