Goichi
1
いつもお世話になっております。baserCMSで出力されたブログRSSの形式についてお伺いします。
現行バージョンのbaserCMSでブログのRSSを出力すると、以下のようなRSSを配信すると思います(下記公式サイトRSS参照)。
■公式サイトRSS
https://basercms.net/news/index.rss
今回、このRSSを他サイトで読み込ませようとした際に「RSSをうまく読み込ませることができない」という話がでてしまい、試しにRSSバリデーションチェックをしたところ(下記、W3Cのサイト)、確かにエラー(Sorryの表記)が出ているような感じでした。
■W3C RSS バリデータ
https://validator.w3.org/feed/
baserCMSの吐き出すRSSは、feedlyなどのRSSリーダーツールでは一応読み込むことができており、バリデーションチェックに引っかかるからといって、使えないわけではないと思うのですが、RSS素人ながら、ブラウザでRSSを開いた際の見え方が他サイトの表示と比べて少し違うようにも感じています。(文字のエンコードがされているので、ごちゃごちゃ見えるだけかも知れませんが・・・)
そこで、お伺いします。
1.RSSのバリデーションエラーは、直すことができるものでしょうか?
2.上図のような見え方の差について、特に問題ないものでしょうか?
ご存知の方がいらっしゃいましたら、ご教示ください。よろしくおねがいします。
seto
2
こんにちは
RSSの表示をカスタマイズしたい場合、テーマ配下にビューファイルを作成することで可能です。
例
# /theme/【テーマ名】/Blog/rss/index.php
<?php $this->layout = 'ajax' ?>
<?php echo '<?xml version=\'1.0\' encoding=\'UTF-8\'?>' ?>
<rss>
...
<?php foreach ($posts as $post): ?>
<item>
<title><?php $this->Blog->postTitle($post) ?></title>
....
</item>
<?php endforeach ?>
</rss>
標準だと、/lib/Baser/Plugin/Blog/View/Blog/rss/index.php で、CakeのRSSヘルパーを使用してRSSの出力を行っているようです。
しかし、どこまでW3Cの規則に添うようにカスタマイズできるか分からないので、私なら上記のようにタグを直接書いちゃいますね。
見え方の差については、おっしゃる通りエンコードされているだけなので特に問題はないと思います。
(美しくはないですが…)
「いいね!」 1
Goichi
3
setoさん、お世話になっております。ご回答ありがとうございました。
承知しました。それが早そうなので、そのように処置したいと思います。
ちなみに、Cakeの公式サイト(Cookbookとか)を見てみると、ちゃんと仕様に沿った(と思われる)RSSが出力されてるんですよね・・・。3系だからでしょうか・・・。
なにはともあれ、ふん切りがつきました。ありがとうございました。m(__)m
「いいね!」 2