WordPress, WPCron und die richtige Zeit

Probleme mit dem WordPress Cron und der richtigen Zeit muss man wissen, dann lassen sie sich einfach umgehen.

Die Zeiten ändern sich.

Dieser Beitrag scheint älter als 6 Jahre zu sein – eine lange Zeit im Internet. Der Inhalt ist vielleicht veraltet.

WordPress bietet eine Pseudo-Cronjob-Funktionalität, welche es dem Entwickler erlaubt zeitgesteuerte Events auszuführen. Zum Beispiel funktioniert die komplette Update-Notification darüber. In diesen sogenannten Scheduled Events kann man auch selbst eigene Jobs definieren. Dabei sollte man aber auf eine wichtige Sache achten: Die Zeit.

Die wp-cron.php arbeit etwas abseits vom Core und lädt nur die wichtigsten Sachen und lässt sämtliche Einstellungen von WordPress offen. Die in Settings -> General eingestellte Timezone wird dabei nicht berücksichtigt. wp-cron.php läuft also definitiv und unveränderlich auf UTC.

Das heisst also folgendes: Sind wir in der Zeitzone Berlin ist die lokale Zeit UTC+1. Tragen wir ein Scheduled Event ein, hängt er immer eine Stunde nach. Um das zu ändern hilft folgende Funktion:


function get_offset_to_gmt_in_seconds() {

	$current_timezone_offset = get_option( 'gmt_offset' );
	$offset = $current_timezone_offset * 3600;

	return $offset;
}

Gastbeitrag

Thomas Herzog Avatar
Dieser Beitrag ist aus der Feder von Thomas Herzog - hughwillfayle.de und ist ein Beitrag zum Adventskalender auf wpengineer.com zum Thema WordPress.
Thomas Herzog ist Webentwickler im Team der WordPress Agentur - Inpsyde GmbH.

Vielen Dank auch hier nochmal von meiner Seite an Thomas.

Kommentare sind geschlossen.