CRON jobs werden verwendet, um Aufgaben zu periodischen festen Zeiten, Datumsangaben oder Intervallen auf deiner WordPress-Site zu planen. Einige Beispiele für einen Cron-Job in WordPress umfassen das Planen eines Beitrags für die Veröffentlichung, das Überprüfen auf Updates oder ein Backup-Plugin, das nach einem vordefinierten Zeitplan ausgeführt wird.

In WordPress wird dies von WP-Cron gehandhabt, mit dem ein System-Cron simuliert wird. Abhängig von der Menge des Datenverkehrs zu deiner Seite kann die Verwendung des integrierten Cron-Handlers tatsächlich Auswirkungen auf deine Seitenladezeiten haben. Heute zeigen wir dir, wie du WP-Cron (wp-cron.php) deaktivierst und stattdessen einen Systemcron verwendest, um die Leistung zu verbessern.

Performance-Probleme mit WP-Cron

Wir haben bei Kinsta mit einer Vielzahl von verkehrsreichen und anspruchsvollen Seiten zu tun. Aus diesem Grund haben wir mit dem in WordPress integrierten Cron-Handler eine Reihe von Leistungsproblemen gesehen: WP-Cron. Zunächst einmal ist es wichtig zu verstehen, dass WP-Cron kein echter Cron-Job ist. Es ist einfach das, was WordPress entwickelt hat, um zu simulieren, was ein System-Cron tut.

WP-Cron läuft nicht kontinuierlich. Standardmäßig wird die Datei wp-cron.php bei jeder Seitenladung ausgelöst, was bei stark frequentierten Websites zu Problemen führen kann. Wenn eine Seite nicht über genügend PHP-Worker verfügt, wird manchmal eine Anforderung eingehen. WordPress gibt den cron aus. Der cron muss jedoch auf den Worker warten und sitzt daher nur dort.

Das umgekehrte Szenario trifft ebenfalls zu. Wenn auf einer Website nicht viel Verkehr herrscht, können Zeitpläne verfehlt werden, da niemand eine Seite geladen hat.

Ein besserer Ansatz ist, WP-Cron zu deaktivieren und stattdessen die Systemcron-Funktion zu verwenden. Dies läuft nach einem vordefinierten Zeitplan ab und wird sogar im offiziellen Plugin-Handbuch empfohlen.

Wie du WP-Cron deaktivierst

Um WP-Cron zu deaktivieren, fügst du Folgendes in deine Datei wp-config.php ein, direkt vor der Zeile mit der Aufschrift „That’s all, stop editing! Happy blogging.” Notiz: Dies verhindert, dass es beim Laden der Seite ausgeführt wird, nicht wenn du es direkt über wp-cron.php aufrufst.

define('DISABLE_WP_CRON', true);
Deaktiviere WP-Cron

Deaktiviere WP-Cron

So planst du System Cron

Du musst dann die wp-cron.php von deinem Server aus planen. Die gute Nachricht ist, dass wenn du ein Kinsta-Client bist, löst unser serverseitiger Cron standardmäßig alle 15 Minuten ausgeführt werden. 💪 Dadurch werden alle geplanten WordPress-Cron ausgeführt. Du kannst die Häufigkeit bei Bedarf erhöhen, indem du dich an unser Support-Team wendest.

Wenn du dich mit SSH auskennen, kannst du auch unserem Tutorial Verwalten von Server-Crons über die Befehlszeile von Kinsta folgen. Alle unsere Hosting-Pakete beinhalten den Zugang zu SSH.

Wenn du kein Kinsta-Client bist, empfehlen wir dir, diese Ressourcen zu lesen, um zu erfahren, wie System-Crons eingerichtet werden:

Erstelle einen Cron-Job in cPanel

Wenn du einen Host mit cPanel verwendest, kannst du auch über das Steuerungsfeld einen Systemcron erstellen. Hinweis: Stellesicher, dass du zuerst den Standard-WP-Cron deaktivierst.

Schritt 1

Haben Sie mit Ausfallzeiten und WordPress-Problemen zu kämpfen? Kinsta ist die Hosting-Lösung, die Ihnen Zeit spart! Sieh dir unsere Features an

Login bei cPanel Klicke im Abschnitt „Advanced“ („Erweitert“) auf Cron-Jobs.

cPanel cron jobs

cPanel cron jobs

Schritt 2

Im Abschnitt Add New Cron Job (Neuen Cron-Job hinzufügen) kannst du aus verschiedenen vordefinierten Zeitplänen auswählen, z. B. zweimal pro Stunde oder einmal pro Woche. Dein Hosting-Provider hat höchstwahrscheinlich ein Limit dafür, wie oft er Cron-Jobs ausführen kann. Zweimal pro Stunde ist eine übliche Einstellung für Shared Hoster.

cPanel cron job Einstellungen

cPanel cron job Einstellungen

Schritt 3

Gib folgenden Befehl ein: Ersetze https://domain.com durch deinen Domainnamen. Dieser Befehl kann je nach Konfiguration deines Hostings leicht variieren. Dann klicke auf „Add New Cron Job“ („Neuen Cron-Job hinzufügen“)

wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
cPanel fügt einen neuen Cronjob hinzu

cPanel fügt einen neuen Cronjob hinzu

The >/dev/null 2>&1 part of the command above disables email notifications.

Plane Crons mit einer Drittanbieterlösung

Wenn du mit dem Einrichten von cron-Jobs auf deinem Server nicht vertraut bist oder dein Hosting-Provider keinen Zugriff bereitstellt, kannst du auch eine Drittanbieterlösung wie EasyCron verwenden.

5
Mal geteilt