WordPress-Fehler: Falsche Zeitstempel bei Posts über XML-RPC-Schnittstelle

Published 2006-07-01, 17:53

Mir ist gerade ein weiterer WordPressbug aufgefallen:

Fehlerbeschreibung:

Wenn man einen Post per XML-RPC-Schnittstelle an WordPress übermittelt, kommt es zu Problemen bei der Berechnung der intern von WordPress genutzten Zeitstempel „post_date“ (lokale Zeit) und „post_date_gmt“ (Greenwich Mean Time).

Die Differenz sollte eigentlich 2 Stunden betragen, WordPress berechnet jedoch einen Zeitunterschied von 4 Stunden. Ein Post der um 17 Uhr veröffentlich werden soll hat in post_date_gmt also nicht 15, sondern 13 Uhr stehen.

Auswirkungen:

Dadurch erscheint der Beitrag nicht erst um 17 Uhr auf dem Blog, sondern wird fälschlicherweise schon ab 15 Uhr angezeigt. Der angezeigte Zeitstempel des Beitrag hingegen ist in Ordnung.

Applikationen, die die XML-RPC-Schnittstelle nutzen, können also nichts dafür (eigene, Blogdesk). Fehlersuche dort wird wohl eher nicht zu einem Ergebnis führen.

Analyse:

Der Fehler steckt irgendwo in den Zeilen 560 bis 566 der xmlrpc.php oder den dort aufgerufenen Funktionen:

// Do some timestamp voodoo
$dateCreatedd = $content_struct['dateCreated'];
if (!empty($dateCreatedd)) {
$dateCreated = $dateCreatedd->getIso();
$post_date = get_date_from_gmt(iso8601_to_datetime($dateCreated));
$post_date_gmt = iso8601_to_datetime($dateCreated, GMT);
}

Nachvollziehen kann ich es allerdings nicht wirklich. Zu viel anderes im Kopf gerade. Hat jemand Lust, sich das genauer anzuschaun?

Topic(s): Kram 1 single comment - :/

Diskussion zum Artikel

» Selbst kommentieren

  1. ( 1 )

    WordPress-Fehler: Falsche Zeitstempel bei Posts über XML-RPC-Schnittstelle – 2…

    Ich habe mir den Fehler nun (natürlich) doch noch genauer angeschaut.
    Erweiterung Analyse:
    Ich habe mit dem Offline-Blogging-Programm Blogdesk weiter herumexperimentiert. Bei einem Post, der am 06.07.2006 um 03:11 Uhr veröffentlich werden sol…

    Trackback by Betamode am 5. Juli 2006

Sorry, the comment form is closed at this time.

20 queries. 0,203 seconds.