Come aggiungere interruzioni di riga nel feed RSS?
Domanda
Sto costruendo il mio feed RSS personalizzato in PHP. Voglio che il tag di contenere interruzioni di riga per rendere il testo più leggibile. Tuttavia, non riesco a capire come farlo correttamente. Non importa quello che provo qualche lettore RSS lo interpreta in modo errato. C'è qualche modo standard migliore per aggiungere una linea-break e RSS 2.0 feed?
Ho cercato "\ n", che opera in NetNewsWire sul Mac, ma viene ignorato dal lettore integrato di RSS di Safari browser.
Ho cercato
, che opera nel lettore di Safari RSS, ma i risultati in tutto il testo dopo il
essere tagliati fuori in NetNewsWire.
Soluzione
Per impostazione predefinita, i lettori cercheranno di analizzare i dati a meno che non dite loro di non farlo. Per avere loro saltare su di esso e lo presentano come si intende, è necessario dichiarare una sezione CDATA
in RSS .
Se i dati grezzi ha già a capo, allora si dovrebbe anche essere in grado di utilizzare solo la funzione nl2br()
da aggiungere nel <br />
in questo modo:
echo '<description><![CDATA[ ' .nl2br($desc_data). ' ]]></description>';
Se non si dichiara la sezione CDATA
, i lettori di feed RSS vedranno alcun tag HTML si potrebbe avere come parte della RSS reale e si aspettano un nodo reale o elemento del feed RSS.
Altri suggerimenti
È possibile utilizzare CDATA e la linea html interruzioni:
Esempio:
Ecco la nuova linea
]]>
Il RSS specifica afferma che sì, è possibile utilizzare HTML in una descrizione, ma naturalmente ha bisogno di essere adeguatamente sfuggito perché è incorporato in XML. Quindi, utilizzando un <br>
è l'idea giusta, ma è necessario codificare utilizzando uno di questi metodi, fare la vostra scelta:
<description>first line<br>second line</description>
<description><![CDATA[first line<br>second line]]></description>
file_put_contents("rss.txt","<br>") roach idea