0

私は SO でこのトピックに関する約 12 の投稿を読みましたが、それらはすべて私が持っていない空白の問題に言及しており、フィード バリデーターは私のフィードが問題ないことに同意しています (http://feedvalidator.org/check.cgi ?url=http%3A%2F%2Fgearmunk.com%2Fblog%2Ffeed%2F)

次のコードを使用して RSS を解析しています。

<?php
$rss = new DOMDocument();
$rss->load('http:/gearmunk.com/blog/feed/');
$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
$item = array ( 
'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$limit = 3;
for($x=0;$x<$limit;$x++) {
$title = str_replace(' & ', ' &amp; ', $feed[$x]['title']);
$link = $feed[$x]['link'];
$description = $feed[$x]['desc'];
$date = date('l F d, Y', strtotime($feed[$x]['date']));
echo '<p><strong><a href="'.$link.'" title="'.$title.'">'.$title.'</a></strong><br />';
echo '<small><em>Posted on '.$date.'</em></small></p>';
echo '<p>'.$description.'</p>';
}
?>

しかし、 http: //gearmunk.com/index3.phpを見ると、右側に 3 つの不適切な日付がリストされており、RSS データがないことがわかります。別のフィード URL を入力すると問題なく動作し、RSS フィードを Google リーダーに入力すると問題なく動作します。私が見逃しているばかげた単純なものがあることを願っています。誰か助けてくれませんか?

ありがとう、エリック

詳しくは:

wordpress の問題であることに注目し始めたので、他の wordpress RSS フィードをいくつか試してみました。CNN からのもの (http://religion.blogs.cnn.com/feed/) は正常に動作しますが、BoingBoing (これも WP サイト) からのものは動作しません: http://boingboing.net/feed .

通常は空白の問題に関連する XML 解析エラーが発生しないので、それが問題だとは思いません。

エリック

4

2 に答える 2

3

変更してみる

$rss->load('http:/gearmunk.com/blog/feed/');

以下へ(余分な / に注意してください)

$rss->load('http://gearmunk.com/blog/feed/');

その変更により、コードは期待どおりに動作するように見えました。

于 2013-01-18T21:01:30.757 に答える