WordPressのRSS表示を更新日順に変更する方法(RSSのカスタマイズ)

サイバーマンデー
Amazonプライム会員限定の大セール「サイバーマンデー」開催中!プライム会員限定の大セール

WordPressのRSSフィード情報は、デフォルトだと投稿日の新しいものから表示されます。

これを更新日の新しいもの順から表示するようにテーマ側からカスタマイズする方法の紹介です。

スポンサーリンク
レクタングル(大)広告

主な手順

RSSのカスタマイズに必要な主な手順は以下です。

  1. RSSカスタム用のファイルを作成
  2. functions.phpでRSSカスタムファイルを読み込む

単に、更新順表示にカスタマイズするだけなら、コピペを2回するだけでできる簡単なものです。

RSSカスタム用のファイルを作成

まずは、子テーマフォルダ直下に「feed-rss2.php」というファイル名でファイルを作成します。

feed-rss2.php

次にそのファイルを開いて、以下を貼り付けます。

このテンプレートファイル内で、RSSの出力形式をカスタマイズしています。

このコードは、以下のページに書かれていたものを参考にして一部修正しました。

参考 WordPressで更新時間順にRSSを出力する方法

WordPressの設定値を取得する場合の参考には以下。

参考 wordpressでいろいろな設定値を取得してみる | hellooooworld.com

functions.phpでRSSカスタムファイルを読み込む

あとは、先程作成したRSS出力用のテンプレート「feed-rss2.php」を、デフォルト表示と差し替えれば良いだけです。

RSS出力の差し替えを行うには、functions.phpに以下のコードを追記してください。

今回は、子テーマでのカスタマイズを前提にしてコードを書いています。

親テーマでカスタマイズする場合は、get_stylesheet_directory()をget_template_directory()に変更してください。

RSS差し替えは、以下のページを参考にさせていただきました。

参考 備忘録:WordPressでRSSフィードをカスタマイズする方法|ウェビメモ

動作確認

あとは、[WordpressのURL]/feed/にアクセスしてフィードを確認します。

通常なら、以下のように投稿日の新しい順に表示されていたのが

投稿日が新しい順のRSSフィード

更新日順に表示されていれば、カスタマイズ成功です。

更新日が新しい順のRSSフィード

※FirefoxでRSSを閲覧した時の表示。

キャプチャーの日付は、「feed-rss2.php」の以下の部分が表示されています。

表示される日付けも更新日にするには、以下のように変更してください。

ただ、マークアップ(pubDate:公開日)と中身(更新日)の意味合いは変わってしまいます。

まとめ

こんな感じでRSSの内容をカスタマイズすることができます。

今回は、「更新日順に並び替えをする」というカスタマイズでしたが、その他のカスタマイズも、今回の方法を少し変更するだけで、ある程度対応できるかと思います。

「RSSの出力を自分好みにカスタマイズしたい」なんて場合にどうぞ。