Page 1 of 1

Lösung: Fehler im RSS bzw. Atom Feed

Posted: Wed Aug 04, 2010 11:02 am
by 05282
Moin Moin,

Ich habe bei mir einen fehlerhaften Feed, sowohl Atom als auch RSS.

Zustande kommt das Ganze dadurch, dass description bzw. body mit HTML gefüllt sind.

Wegen Lightbox wird dadurch z.B. rel neu definiert, ein als ö geschriebenes ö schmeißt Fehler usw.

Ich habe das nun umgangen indem ich description und body mit CDATA-Feldern umgeben habe.

Dazu habe ich in der rss.php vor serendipity_printEntries_rss (~Zeile 213) folgendes eingefügt:

Code: Select all

$temp_entries = array();
foreach($entries as $key => $temp_entry){
	$temp_entry['body'] = '<![CDATA['.$temp_entry['body'].']]>';
	$temp_entry['extended'] = '<![CDATA['.$temp_entry['extended'].']]>';
	$temp_entries[$key] = $temp_entry;
}

$entries = $temp_entries;
Das ist zwar die Holzhammermethode, aber es tut fürs erste ohne wirkliches Core-Hacking. :)

Falls jemand ähnliche Schwierigkeiten hat hilft das vll. erstmal, oder es gibt eine elegantere/fertige Lösung, die ich im Eifer des Gefechts übersehen hab. Dann wäre ich sehr dankbar wenn sie mir jemand verrät. :D

Re: Lösung: Fehler im RSS bzw. Atom Feed

Posted: Wed Aug 04, 2010 4:28 pm
by onli
Hi
Wenn ich das richtig sehe, sollten die html-tags eigentlich durch smarty escaped werden, zumindest im Body, also in der feed_2.0.tpl in templates/default. Vielleicht hätte es ausgereicht, die description ebenfalls zu escapen?
Gruß

Re: Lösung: Fehler im RSS bzw. Atom Feed

Posted: Thu Aug 05, 2010 5:19 pm
by 05282
onli wrote:feed_2.0.tpl in templates/default
Danke für den Hinweis, in der default feed_2.0.tpl ist es escaped, aber nicht in den atom-templates.

Danke! :)