WordPressのRSSの見た目をCSSで変更してみる

折角ブログの見た目を変更したので、RSSもいじってみようと思い、CSSでのデザイン変更を行ってみました。

CSSを書いて、読み込ませるだけ・・・ではあったのですが、RSS用のテンプレートの適用方法が若干特殊だったので残しておきます。

RSSのテンプレートを変更する

WordPressにはRSS用のテンプレートは用意されていないため、ソースファイルを触るしかないのかな?なんて思っていましたが、アップデートする度に元に戻ってしまうのがイヤなので、調べてみるとこんな方法で各種フィード用のテンプレートを実現できるようです。

上記記事は”functions.php”を書き換える方法ですが、プラグインも作成されているようなので、そちらを使ってみても良いかもしれません。

RSSにCSSを読み込ませる

RSSのテンプレートが作成できるようになったら、CSSを読み込ませるように書き換えます。

HTMLとは少しだけ記述が違い、こんな感じになります。

<?xml-stylesheet href="rss.css" type="text/css" media="screen"?>  

WordPressのテーマ用に書くとこんな感じでしょうか。

<?php echo '<?xml-stylesheet href="'.get_bloginfo("template_directory").'/rss.css" type="text/css" media="screen"?>'; ?>  

RSS向けのCSSを書く

最後にRSS向けのCSSを書きます。

HTMLと同様にXMLが基礎となっているので、階層で指定してやれば問題ありませんが、全てインライン要素扱いになっているので、必要なものにはdisplay:blockを指定すると良さそうです。

また、通常のHTMLでは存在しない、<dc:creator>のようなタグは、セミコロンの後ろ、今回で言う所のcreatorとして認識されるようです。

他の方法

他にXSLTを利用すると、XML内のデータをHTMLに変換することが出来るので、もっと自由にレイアウトや、リンクを貼ったりすることも出来るので、面白そうですね。

またこちらの方法も試してみたいと思います。

参考