WordPress: Daten-Problem im RSS-Feed

04 05 2005

Seit dem 01. Mai 2005 wird im Word­Press–RSS–Feed ein nicht vali­des Datum aus­ge­ge­ben. Liest man den Feed in einem ent­spre­chen­den Rea­der, so wird als Datum jedes Bei­trags die fal­sche Angabe 01.01.1970 ange­zeigt. Gleich­zei­tig ent­spricht der Feed nicht mehr den Stan­dards und der FEED Vali­da­tor quit­tiert dies mit der Meldung:

pub­Date must be an RFC822 date

Da das Datum also nicht dem RFC–Stan­dard ent­spricht, wird im Feed gar kein Zeits­tem­pel gene­riert und des­halb in den Rea­dern das NULL–Datum 01.01.1970 ver­wen­det. Die Ursa­che die­ses Pro­blems liegt in einer feh­ler­haf­ten Defi­ni­tion in der Datei wp-rss2.php. Ein Patch für die kor­ri­gierte Ver­sion wurde recht schnell im WP-​Support-​Forum vor­ge­stellt. Die kon­krete Ver­än­de­rung in der wp-rss2.php stellt sich wie folgt dar:

Ori­gi­nal­ver­sion, Zeile 27:

< ?php echo mysql2date('D, d M Y H:i:s +0000', get_lastpostmodified('GMT'), 0); ?>

Geän­derte Ver­sion, Zeile 27:

< ?php echo mysql2date('r', get_lastpostmodified('GMT'), 0); ?>

Ori­gi­nal­ver­sion, Zeile 36:

< ?php echo mysql2date('D, d M Y H:i:s +0000', get_the_time('Y-m-d H:i:s')); ?>

Geän­derte Ver­sion, Zeile 36:

< ?php echo mysql2date('r', get_the_time('Y-m-d H:i:s')); ?>

Pro­ble­ma­tisch war hier also der String D, d M Y H:i:s +0000, der nun gegen die Funk­tion r (PHP ab Ver­sion 4.0.4.; RFC 822-​kompatibel) aus­ge­tauscht wurde. Nach die­ser Ände­rung vali­diert der Feed wie­der und das Datum wird in RSS–Rea­dern kor­rekt angezeigt.

Konversation  

Kommentare



Konversation  

Artikel kommentieren








Kommentare können mit (X)HTML-Elementen oder mit Textile ausgezeichnet werden. Es werden nicht alle Elemente unterstützt. Diesbezüglich gilt: »Weniger ist mehr.«

Smallprint

Impressum & Co.

HA·BÁ·RI