one's way blog

ワクワクを生み出せるWebエンジニアを目指して。

WordpressのRSSフィードが更新されない時の対処法

f:id:seintoseiya:20150325230002j:plain:w300

ブログを更新したのにWordpressRSSフィードに反映されない。
RSSのURLは正しいし、なにより一番最初の記事は表示されている。

という事で、なんとなく原因はわかっていた。
おそらく悪さをしているのはキャッシュだ!!!

google先生に「Wordpress RSS 更新されない」で相談。
案の定、いっぱい検索結果が返ってきた。

適当にそれっぽい記事を選んで以下の対応を行う。

rss.phpを編集して、キャッシュ保持時間を変更

以下のファイルを修正。
/wp-includes/rss.php

var $MAX_AGE	= 43200 // when are files stale, default twelve hours

初期設定では43200秒(12時間)になっているので、
これを1800(30分)に変更。
(0はさすがにサーバ負荷の関係でよろしくないらしい)

まぁでもテストのために一時的に0にして確認すると、
・・・更新されねー。


google先生の検索結果をもう一度見回すと、
対応方法色々あるみたい・・・

色々試して結局、次の方法でできました。

feed.phpを編集して、キャッシュ保持時間を変更

以下のファイルを修正。
/wp-includes/feed.php

wp_feed_cache_transient_lifetime’, 12 * HOUR_IN_SECONDS, $url

これを・・・

wp_feed_cache_transient_lifetime’, 1800, $url

こうして、おしまい。

Wordpressは独自でキャッシュを管理しているから、
更新が反映されない時は疑わなくてはいけませんね。