前幾天我使用WordPress經營的部落格中有一個突然傳出RSS讀取錯誤的問題,連帶的使用FeedBurner來產生的最新文章電子報也告失靈,其實那幾天真的讓我非常困擾,不只WordPress後台版本被強迫升級,就連PHP(超文字預處理器)也被強迫升級到最新的版本,最讓工作熊傷腦筋的是升級後各種問題也接踵而來。
嘗試使用各種瀏覽器(IE、Firefox、Chrome)來讀取RSS的結果都無法顯示內容,直接讀取FeedBurner的種子網頁後才發現錯誤發生在RSS的第二行第六排,再來就沒有資料了。
進去FeedBurner的後台讀取RSS也是完全不能顯示。
工作熊曾經試過把所有的外掛關閉,但是問題依然存在。更換WordPress的佈景主題(版型)到預設的【Twenty Eleven】與【Twenty Ten】,問題依然無解。
就在快沒轍的時候,當然就是上網找答案囉!發現香腸有篇文章【解決WordPress的RSS輸出錯誤問題】,就像在汪洋大海看到浮木一般,於是如法炮製,最後果真解決了RSS讀取錯誤的問題。
1. 使用Feed Validator查看RSS問題點
首先使用【FEED Validator】在空格處輸入我們要查詢的RSS網址,按下<Enter>或【Validate】按鈕,開始查看不良原因,這個網站可以確實地把我們輸入的RSS網址原封不動的讀取出來,然後分析問題的原因,不懂英文的就用Google翻譯吧!
這段文字基本上說明XML或起始文字沒有放在起始的位置。
再繼續看下面的內容,發現第01行為空白行,這是不被允許的,所以RSS會被解析錯誤,因為在第一行就出錯,所以以後的全部內容都無法繼續顯示。
2. 使用FeedBurner的FeedMedic來查看是否有任何RSS不良的記錄
進到FeedBurner後台,點擊【疑難排解】水平清單,點選側邊欄【FeedMedic】,如果還沒啟動的,就先啟動吧!這裡會列出最近六個RSS問題以及修復信息。不過工作熊的FeedMedic竟然沒有顯示任何錯誤。
3. 依據香腸的解決方法,檢查functions.php
香腸的文章中最後說明是因為functions.php最後面多了兩行空白行,賓果!工作熊的functions.php居然也多了兩行空白行,看來這裡就是問題的主因了。猜想大概是版本升級時,系統主動添加了一些程式碼,然後不小心多加了兩行空白行。
至於為何空白行會造成這樣的問題,工作熊自己也是莫栽秧啦!猜想應該是程式碼解譯器的問題吧!
把這兩行多出來的空白行刪除掉,存檔,再回頭再看看RSS的結果。
1.
4. 問題真的解決了
問題真的解決囉!使用RSS訂閱工具查看,發現已經可以正常顯示RSS的內容囉!真是可喜可賀!
如果你的問題還是沒有解決!就繼續加油吧!到最後還是不行的話,可能會考慮使用備份回復到先前的樣子,但這真的是沒有辦法的最後辦法了。
延伸閱讀:
如何找回WordPress3.5以後消失不見的鏈結功能
[已解決]WordPress登入顯示空白問題-更改wp-config.php
已解決:WLW無效的伺服器回應(Invalid response document returned from XmlRpc server)
發佈留言