Это вполне разумный подход, хотя вы должны заметить, что вы должны использовать это:
<description><![CDATA[My Content here]]></description>
... вместо:
<![CDATA[ <description>My Content here </description> ]]>
... в качестве *Элемент 1007 * является частью спецификации RSS, поэтому должен надлежащим образом присутствовать в RSS, а не экранироваться как текст.
Если вы собираетесь включить контент, отличный от RSS (обычно HTML), в ваш title
и description
, особенно если это пользовательский контент, который может содержать различную разметку или недопустимую разметку, маркировка всего контента как символьных данных, как это, безусловно, является подходящим способом.
Считыватели RSS обычноожидайте и успешно справляйтесь с HTML, хранящимся как CDATA в элементе description
, в то время как используемые им синтаксические анализаторы XML (и все остальное, анализирующее ваш RSS), вероятно, будут весьма чувствительны к искаженному XML, который может быть создан путем включения тегов HTML, неожиданных объектовили даже только один «<
» в тексте <description>
без экранирования.
Используйте любой метод, который ваша библиотека XML предоставляет впоказывать содержимое как CDATA, а не просто вручную оборачивать его <![CDATA[
и ]]>
;Таким образом, все размышления (что произойдет, если контент включает ]]>
?) будут выполнены для вас.