可透過幾個方式測試:
1.透過 W3C Feed Validation Service, for Atom and RSS 檢查其格式有效性,
的確是有一些的問題。
2.透過瀏覽器查看:
用FireFox、IE8可正常顯示。
Chrome無法解析,出現這樣的訊息:
<pre class="c" name="code">Click element/attribute for XPath. Double-click to collapse/expand. Enter XPath and click XPath Results for results. Enter XML string and click Render to XML Tree-ify.
Error: INVALID_EXPRESSION_ERR: DOM XPath Exception 51
Error: INVALID_EXPRESSION_ERR: DOM XPath Exception 51
3.用程式語言的簡單工具來解析看看:
我用 ruby 來測試的結果:
<pre class="c" name="code">$ irb
>> require 'simple-rss'
=> true
>> require 'open-uri'
=> true
>> rss = SimpleRSS.parse open('http://ithelp.ithome.com.tw/rss/question')
>> ......
>> puts rss.entries.size
40
=> nil
>> puts rss.entries[0].title
怎麼寫挨踢人的年度工作目標?
=> nil
>> puts rss.entries[0].link
http://ithelp.ithome.com.tw/question/10060982?tag=rss.qu
=> nil
所以從程式語言簡單的套件可以正常解析,
能解析就能在自己的程式頁面畫出「聯播」功能。
可參考 [RoR] 簡單產生 RSS Feeds 及簡易部落格聯播功能
其結果在:
http://alpha.tagbible.net/demo/blogrolls
(但iTHome是big5的碼,我沒轉所以會有亂碼)
從以上的測試歸結起來,
應是Drupal所要解析外部RSS的模組,
可能是太嚴格的檢視方式,
也沒有考慮到錯誤例外的狀況。
所以換其他的Drupal的RSS相關模組,
就可解決問題。
另個轉彎的方式是:
到 FeedBurner 註冊個帳號,
去讀你要的RSS,FeedBurner應會把 RSS 的格式整得更符規格,
你再用原來的Drupal的RSS模組來讀FeedBurner的網址,
看是不是就可順利做到聯播的功能。