3 月04
WordPress的RSS讀取錯誤問題解決

直接讀取RSS錯誤

前幾天我使用WordPress經營的部落格中有一個突然傳出RSS讀取錯誤的問題,連帶的使用FeedBurner來產生的最新文章電子報也告失靈,其實那幾天真的讓我非常困擾,不只WordPress後台版本被強迫升級,就連PHP(超文字預處理器)也被強迫升級到最新的版本,最讓工作熊傷腦筋的是升級後各種問題也接踵而來。

嘗試使用各種瀏覽器(IE、Firefox、Chrome)來讀取RSS的結果都無法顯示內容,直接讀取FeedBurner的種子網頁後才發現錯誤發生在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會被解析錯誤,因為在第一行就出錯,所以以後的全部內容都無法繼續顯示。

FEED-Validator01

2. 使用FeedBurner的FeedMedic來查看是否有任何RSS不良的記錄

進到FeedBurner後台,點擊【疑難排解】水平清單,點選側邊欄【FeedMedic】,如果還沒啟動的,就先啟動吧!這裡會列出最近六個RSS問題以及修復信息。不過工作熊的FeedMedic竟然沒有顯示任何錯誤。

FeedBurner-FeedMedic

3. 依據香腸的解決方法,檢查functions.php

香腸的文章中最後說明是因為functions.php最後面多了兩行空白行,賓果!工作熊的functions.php居然也多了兩行空白行,看來這裡就是問題的主因了。猜想大概是版本升級時,系統主動添加了一些程式碼,然後不小心多加了兩行空白行。

至於為何空白行會造成這樣的問題,工作熊自己也是莫栽秧啦!猜想應該是程式碼解譯器的問題吧!

把這兩行多出來的空白行刪除掉,存檔,再回頭再看看RSS的結果。

修改functions.php1.

4. 問題真的解決了

問題真的解決囉!使用RSS訂閱工具查看,發現已經可以正常顯示RSS的內容囉!真是可喜可賀!

RSS可以正常顯示了

如果你的問題還是沒有解決!就繼續加油吧!到最後還是不行的話,可能會考慮使用備份回復到先前的樣子,但這真的是沒有辦法的最後辦法了。 


延伸閱讀:
如何找回WordPress3.5以後消失不見的鏈結功能
[已解決]WordPress登入顯示空白問題-更改wp-config.php
已解決:WLW無效的伺服器回應(Invalid response document returned from XmlRpc server)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *