WordPress RSSフィードが更新されない

「RSSフィード」

ブログで新規に投稿したら、別のサイトに自動にブログの件名と更新日を表示させるといった用途で使用していますが、投稿したのにRSSフィードに表示されないとか、投稿した日がずれているとか、トラブルがあったもので、Google先生に教えてもらいました。Wordpressの問題らしいです。

  • WordPressは独自でキャッシュを管理している
  • WordPressのタイムゾーンは、UTC(グリニッジ標準時)に設定されている

ようは、タイムラグがあるということです。さて、どう対処したらいいかですが、Google先生には、
/wp-includes/rss.php とか、/wp-config.php を編集すると解決できるとかあったけど、どうも上手くいかなくて・・・色々と試してみて、これさえ編集すればOKというものを見つけましたので下記します。

吐き出し側と受け側の両方:/wp-includes/feed.pfpを編集

wp_feed_cache_transient_lifetime’, 12 * HOUR_IN_SECONDS, $url

12 * HOUR_IN_SECONDS で12時間らしいです。これを、

wp_feed_cache_transient_lifetime’, 1, $url

1秒にしてみました。

吐き出し側のみ:/wp-setting.phpを編集

date_default_timezone_set( ‘UTC’ );

UTC がグリニッジ標準時。これを

date_default_timezone_set( ‘UTC+9’ );

9時間足しました。
これで、RSSフィードがリアルタイムで更新されるようになりました。

但し、Wordpressをバージョンアップすると、もとに戻ってしまいます。
編集を繰り返しましょう。