WordPressでカスタムフィール値をRSSフィードに書き出す

カスタムフィールドとRSSフィード

WordPress投稿画面カスタマイズとカスタムフィールドプラグインは前回設置まで行っていました。

カスタムフィールドプラングインは、『Custom Field Template plugin』をインストールしましたが、今回は、RSSフィードにカスタムフィールドおよびプラグインのCustom Field Template pluginの情報を、XMLノードに追加させる手順について学習してみました。

基本的にはテンプレートタグのthe_meta()、get_post_meta()をそれぞれのテンプレートphpのループ処理のどこかに記述を加えるだけで表示することが可能ですので、
おそらくRSS2.0フィードを出力するソース内に同様の記述をすれば解決するだろうと予想してみました。

追いかけてみるとwp_includesフォルダのfeed-rss2.phpがデフォルトで使用されていたので、開いてみるとRSS2.0出力ファイルで間違いなさそうなので、the_meta()タグをループ処理内に追加。

再び、RSS2.0を表示させるがカスタムフィールドの追加内容が表示されていない。しかし、ソースコードを見てみると、値が取得できていました。

とりあえず、イメージ画像のフィールドを別に設けて、RSS2.0フィードからXMLノードの参照はできるようになりましたが、もう少しカスタマイズしないと、今後の運用で時間がかかると考え、以下のカスタマイズを試みてみました。

○RSSフィードに出力されるカスタムフィールドのUL,LIタグのカスタマイズ

カスタムフィードの出力するUL,LIタグですが、post-template.php内のthe_metaタグを複製して、新規のfunctionを追加して,feed-rss2.phpに新規関数記述で問題なく値が出力されていました。

RSS2.0フィードのカスタマイズについては、rss2.0(Really Simple Syndication)の要素や名前空間をより理解しないと、自由なカスタマイズは難しいかもしれません。

とりあえず、参照できるかどうかは別として、カスタムフィールドの内容をRSS2.0フィードのXMLノードに出力することができたので、この追加要素の値が外部から参照できるかどうかを試してみたいとおもいます。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください