WordPressのFeedテンプレートをカスタマイズする
WordPressを使用した案件でちょっと困ったことが起きた。
トップページに「更新情報」として最近のエントリーを5件とか表示するのだが、リンク先をエントリー詳細ページ以外にしたいパターンもある場合はどうしたら良いか?
まぁこれ自体は、リンク先のURLを入力するカスタムフィールドを設置し、その値のある無しとかで条件分岐してやればOKなのだが、それだけではなくRSSフィードのテンプレートもカスタマイズしないといけないなぁ…と思い探してみると、無い。テンプレートが。
仕方なくWPのコアファイルというか、wp-includeフォルダのテンプレートをいじるのか…なんかヤダな…と思いもう少しグーグル先生に問うてみると、見つけました。
「アクションフック」で既存のテンプレート(コアファイル)をremoveし、テーマフォルダに置いたカスタマイズしたテンプレートをaddする、という流れです。
wp-include フォルダにあるフィードテンプレートを流用してカスタマイズ。例として
「カテゴリー5に属する投稿の場合はリンク先をカスタムフィールドで指定したURLに、それ以外は通常通り記事のパーマリンクに」だと、こんなカンジ。
<rss version="2.0">
<省略>
<channel>
<省略>
<item>
<title><?php the_title_rss() ?></title>
<?php if ( in_category('5') ) { ?>
<link><?php echo post_custom('カスタムフィールド名'); ?></link>
<?php } else { ?>
<link><?php the_permalink_rss() ?></link>
<?php } ?>
<comments><?php comments_link(); ?></comments>
<省略>
</item>
</channel>
</rss>
フィードを別のサイトで読み込む予定だったので、このカスタマイズは必須でした。
Category
CMS | WEB・ネット関連 | WordPress
Posted by masa
[2010/02/05 17:12]
Comment / Trackback : 0
- クリスさんがカッコイイ件
- がんばれ日本、がんばれ東北
- PHPのsimplexml利用してxmlファイルを読み込んでみる
- Custom Field GUI Utility – WPをCMSライクに使う際に。
- 裕志
- ペンタが2号になりますた。
- WordPressのFeedテンプレートをカスタマイズする
- CMSで頭がカオスに
- まさかの被弾
- ライバル
- 2011年11月 (1)
- 2011年3月 (1)
- 2010年12月 (2)
- 2010年8月 (1)
- 2010年5月 (1)
- 2010年2月 (1)
- 2010年1月 (1)
- 2009年11月 (1)
- 2009年7月 (1)
- 2009年5月 (1)










Comment / Trackback
Trackback URL : http://masalog.info/2010/02/wordpressfeed.html/trackback
Post Your Comment!
(承認されるまではコメントは表示されません。そのときはしばらく待ってください。)