WordPress RSSフィード時刻の修正

WordPressで投稿した記事をRSSリーダで見ると、9時間ずれていることを発見。
どうやら’GMT’で表示してしまうらしい。

インターネットで検索していたら、以下のサイトに対処法を発見。感謝です。
http://www.tree-of-courage.net/blog/archives/124

以下は備忘録。(青文字を赤文字に修正)

  • wp-includes/feed-atom.php の修正

23行目

<updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT')); ?></updated>
<updated><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified()); ?></updated>

42行目、43行目

<updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated>
<published><?php echo get_post_time('Y-m-d\TH:i:s\Z', true); ?></published>

<updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', false); ?></updated>
<published><?php echo get_post_time('Y-m-d\TH:i:s\Z', false); ?></published>

 

  • wp-includes/feed-rdf.php の修正

26行目

<dc:date><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified('GMT'), false); ?></dc:date>
<dc:date><?php echo mysql2date('Y-m-d\TH:i:s\Z', get_lastpostmodified(), false); ?></dc:date>

44行目

<updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', true); ?></updated>
<updated><?php echo get_post_modified_time('Y-m-d\TH:i:s\Z', false); ?></updated>

 

  • wp-includes/feed-rss2.php の修正

28行目

<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000′, get_lastpostmodified('GMT'), false); ?></pubDate>
<pubDate><?php echo mysql2date('D, d M Y H:i:s O', get_lastpostmodified(), false); ?></pubDate>

39行目

<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000′, get_post_time('Y-m-d H:i:s', true), false); ?></pubDate>
<pubDate><?php echo mysql2date('D, d M Y H:i:s O', get_post_time('Y-m-d H:i:s', false), false); ?></pubDate>

 

  • wp-includes/feed-rss2-comments.php の修正

30行目

<pubDate><?php echo gmdate('r'); ?></pubDate>
<pubDate><?php echo date('r'); ?></pubDate>

52行目

<pubDate><?php echo mysql2date('D, d M Y H:i:s +0000′, get_comment_time('Y-m-d H:i:s', true), false); ?></pubDate>
<pubDate><?php echo mysql2date('D, d M Y H:i:s O', get_comment_time('Y-m-d H:i:s', false), false); ?></pubDate>

 

  • wp-includes/feed-rss.php の修正

19行目

<lastBuildDate><?php echo mysql2date('D, d M Y H:i:s +0000′, get_lastpostmodified('GMT'), false); ?></lastBuildDate>
<lastBuildDate><?php echo mysql2date('D, d M Y H:i:s O', get_lastpostmodified(), false); ?></lastBuildDate>

WordPressが半角を全角に変換しているため、「’」が全角になっています。
コピペしたときは、「’」を半角に置き換えましょう。

しかし、いちいちこんなことをするのは面倒くさいなぁ。オリジナルコードが修正されないものだろうか。

このエントリーをはてなブックマークに追加
Share on Facebook
Post to Google Buzz
Bookmark this on Yahoo Bookmark
Bookmark this on Livedoor Clip
Share on FriendFeed
Share on StumbleUpon
Share on GREE
Bookmark this on Delicious
Post to Twitter

  1. 一番使いやすいRSSリーダーってどれなんでしょう?