WordPressのRSSフィードが延々更新されないときの対処法

  • このエントリーをはてなブックマークに追加

WodPressでRSSフィードを読み込んでるときに、RSSが更新されてるはずなのに、なぜかずっと古いままの表示になってることがあります。

なんででしょう?……あ、キャッシュかな?

ということで、WordPressは独自にキャッシュを持ってるはずなので、そこの設定をいじってやりました。

/wp-includes/feed.php

680行目(WordPress 4.6.1) 693行目あたり。バージョン変わると場所変わります。

$feed->set_cache_duration( apply_filters( 'wp_feed_cache_transient_lifetime', 12 * HOUR_IN_SECONDS, $url ) );

これを

 
$feed->set_cache_duration( apply_filters( 'wp_feed_cache_transient_lifetime', 600, $url ) );

こう変更したら、ちゃんと更新されるようになりました。

RSSフィードのキャッシュの保持時間を短くしました。単位は秒。あんまり短くするとサーバー負荷がかかるみたいですので、適度な設定に。


ただ、WordPressのバージョンをアップデートしたら、元の設定に戻ってしまったようなので、もしかしたらアップデートごとに再修正しないといけないかもしれません。

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す