2009-08-29 35 views
4

私は自分のカスタムRSSフィードをPHPで構築しています。私は、テキストをより読みやすくするために、タグに改行を含める必要があります。しかし、私はそれを正しく行う方法を把握していないようです。私が何を試しても、RSSリーダーはそれを間違って解釈します。改行やRSS 2.0フィードを追加する標準的な方法がいくつかありますか?RSSフィードに改行を追加するには?

MacでNetNewsWireで動作する「\ n」を試しましたが、SafariブラウザのRSSリーダーには無視されます。


がNetNewsWireで切り捨てられた後、Safari RSSリーダーで動作する< br/>を試しましたが、すべてのテキストが表示されています。

答えて

9

デフォルトでは、読者はあなたに指示しない限り、あなたのデータを試して解析します。それらをスキップして、あなたが意図したとおりに提示するには、declare a CDATA section in the RSSが必要です。

生データが既に改行を持っている場合は、あなたもちょうどそうよう<br />に追加するnl2br()機能を使用することができるはずです。

echo '<description><![CDATA[ ' .nl2br($desc_data). ' ]]></description>'; 

あなたがCDATAセクションを宣言しない場合は、 RSSリーダーには、実際のRSSの一部として持つHTMLタグがすべて表示され、RSSフィードの実際のノードまたは要素が必要です。

1

あなたはCDATAを使用することができますし、HTMLの改行:< BR/>
例:!

<を>

[CDATA [こんにちはRSSフィード< BR/>
は、ここで新しい行が ]です]
0

RSS specificationには、説明にHTMLを使用できますが、もちろんXMLに埋め込まれているため、適切にエスケープする必要があります。だから、<br>を使用すると、右のアイデアですが、あなたは、これらの方法のいずれかを使用して、それをエンコードする必要があり、お好きなところをお選びください:

<description>first line&lt;br&gt;second line</description> 

<description><![CDATA[first line<br>second line]]></description> 
関連する問題