トイレのうず

【WordPress】RSS (rdf) が配信されない件【解決】

当記事はアフィリエイト広告を掲載しています。

このページの RSS (index.rdf) が読み込めないとご連絡をいただきました。(教えていただき、ありがとうございます!)一応自分の RSS は購読していて、動作の確認をとっていたので、びっくりしてしまいました。最近、アクセス数が伸びてきたので、とうとう転送容量オーバーしてしまったのかと思って慌ててしまったのですが、 RSS リーダーではなく Firefox から rdf にアクセスすると、白紙ページ。 rss 、 feed は正常に動いているので、 rdf の何かがおかしいということがわかりました。 Feed や RSS 関係は Yahoo! ブログ検索や goo ブログ検索にインデックスさせるため、リダイレクトしたり配信時刻を日本標準時に変えたりといろいろといじっていたので、原因を切り分けるのが大変でした。

結論からいうと、原因は PowerBookG4 を SSD 化するとこれくらい速くなるの投稿記事部分に Flash ビデオ (FLV) を表示するために JavaScript をベタ書きしていたことでした。 Feed を全文配信していると、 RDF では JavaScript だと解釈されないためにエラーになって白紙で表示されていたようです。

対策としては記事部分にベタ書きしてある JavaScript のコードを HTML のコメントアウトすることで解決しました。具体的には、下記の色のついてる部分を追加。

<script type="text/javascript" src="http://www.1010uzu.com/js/swfobject.js"></script>
<script type="text/javascript">
<!--
var s1 = new SWFObject("http://www.1010uzu.com/swf/jw/player.swf","ply","320","262","9","#FFFFFF");
s1.addParam("allowfullscreen","true");
s1.addParam("allowscriptaccess","always");
s1.addParam("flashvars","file=http://www.1010uzu.com/wp/wp-content/uploads/20091215_2.flv&#038;image=http://www.1010uzu.com/wp/wp-content/uploads/20091215_2.gif");
s1.write("JWplayer2");
//-->
</script>

これは、その昔 Netscape3 などが JavaScript を理解しないために、 HTML 内に書くときにはコメントアウトするという技で、それを応用してみました。これから、投稿記事内に JavaScript を書くときは気をつけよう。( HTML 内に JavaScript を直書きするのは非推奨ですけどね……)

関連記事

WordPress で一部 RSS リーダーに記事が配信されていなかった件
WordPress
thumbnail
WordPress RSS 関係いろいろ
WordPress
thumbnail
【考察】なぜ WordPress は Yahoo! ブログ検索にインデックスされないか?【その 2 】
WordPressWeb制作
thumbnail
【考察】 goo ブログ検索にインデックスされた日時が 9 時間遅れている件
WordPress
thumbnail
【解決】 goo ブログ検索にインデックスされた日時が 9 時間遅れている件【 RSS2 の時刻修正】
WordPress
thumbnail
【調査】 Yahoo! ブログ検索にインデックスされている WordPress 共通点は何か?【その 3 】
WordPressWeb制作
thumbnail