So deaktivieren Sie wp-cron in WordPress (und verwenden stattdessen einen echten Cron-Job)

Möchten Sie wp-cron deaktivieren und durch Ihr eigenes ersetzen real Cron-Job?

Das Ersetzen von wp-cron durch Ihren eigenen Cron-Job kann Ihnen helfen, die geplanten Aufgaben Ihrer Website zuverlässiger auszuführen und auch die Belastung Ihres Servers für Websites mit hohem Datenverkehr zu reduzieren.

In diesem Beitrag erklären wir, was wp-cron ist und warum Sie es möglicherweise deaktivieren möchten, wenn Sie mit dieser Taktik nicht vertraut sind. Dann zeigen wir Ihnen Schritt für Schritt, wie Sie wp-cron deaktivieren und durch einen echten Cron-Job ersetzen.

Wenn Sie bereits wissen, was wp-cron ist und warum Sie es möglicherweise deaktivieren möchten, können Sie dies tun Klicken Sie hier, um direkt zum Tutorial zu springen.

Was ist wp-cron?

Wp-cron ist eine Datei/Funktion, die für die Steuerung der zeitkritischen Aufgaben Ihrer WordPress-Site verantwortlich ist.

Angenommen, Sie haben die Veröffentlichung eines Posts für nächsten Mittwoch um 9:30 Uhr geplant. Wp-cron stellt sicher, dass dies pünktlich geschieht (oder zumindest so „pünktlich“ wie möglich – mehr dazu gleich).

Viele WordPress-Plugins stellen nicht nur sicher, dass die Kernfunktionen von WordPress funktionieren, sondern verlassen sich auch auf wp-cron, um zeitkritische Teile des Plugins zu handhaben.

Wenn Sie alle geplanten Aufgaben auf Ihrer Website anzeigen möchten, können Sie a verwenden kostenloses Plugin wie WP-Crontrol. Wenn du nach … gehst Extras → Cron-Ereignissekönnen Sie alle automatischen Aufgaben sehen, die WordPress zur Ausführung geplant hat, und wie oft sie ausgeführt werden:

Mit dem Plugin WP-Crontol kannst du Aufgaben sehen, bevor du wp-cron deaktivierst

Wie der Name schon sagt, stammt wp-cron aus dem allgemeineren Cron-Scheduling-System, das von Unix-Betriebssystemen verwendet wird. wp-cron unterscheidet sich jedoch von diesen Scheduling-Systemen und wp-cron ist kein echter Cron-Job.

Der große Unterschied besteht darin, dass wp-cron nur ausgeführt wird, wenn Sie oder eine andere Person Ihre Website besuchen (entweder im Frontend oder in Ihrem Dashboard). Immer wenn jemand Ihre Website besucht, führt WordPress die Datei wp-cron.php aus und sucht nach geplanten Aufgaben. Wenn es eine Aufgabe gibt, wird sie dann ausgeführt.

Dies kann jedoch ein Problem für Websites mit geringem Datenverkehr darstellen, da wp-cron nur bei einem Besuch ausgeführt wird. Angenommen, Sie haben diesen Beitrag für Mittwoch um 9:30 Uhr geplant, aber Ihre Website erhält zu diesem Zeitpunkt keine Besuche. Tatsächlich erhält Ihre Website ihren nächsten Besuch erst um 11:30 Uhr.

Nun, in diesem Szenario würde Ihr Beitrag erst um 11:30 Uhr veröffentlicht, da wp-cron nicht ausgeführt werden konnte, wenn es keine Besuche gab. Es würde immer noch den Zeitstempel als 9:30 Uhr anzeigen – es würde nur erst um 11:30 Uhr tatsächlich auf Ihrer Website erscheinen.

Warum sollten Sie wp-cron deaktivieren?

Es gibt zwei Gründe dafür, wp-cron zu deaktivieren und durch Ihren eigenen dedizierten Cron-Job zu ersetzen:

  1. Verlässlichkeit – Wie das obige Beispiel zeigt, ist wp-cron auf Seiten mit geringem Datenverkehr nicht immer zuverlässig, da zur Ausführung ein Website-Besuch erforderlich ist. Mit einem echten Cron-Job können Sie Ihre Aufgaben so einstellen, dass sie alle X Minuten ausgeführt werden egal was – auch wenn keine Besuche stattfinden.
  2. Leistung – Auf stark frequentierten Seiten mögen manche Leute wp-cron nicht, weil WordPress die Datei wp-cron.php bei fast jedem einzelnen Besuch ausführt. WordPress versucht, dies zu begrenzen, indem es nicht mehr als einmal alle 60 Sekunden ausgeführt wird, aber es kann immer noch zu Leistungseinbußen aus verschiedenen technischen Gründen kommen, wie z. B. gleichzeitige Besuche, die beide wp-cron auslösen.

Kurz gesagt, das Erlernen der Deaktivierung von wp-cron kann sowohl für Websites mit geringem als auch mit hohem Datenverkehr nützlich sein, wenn auch aus unterschiedlichen Gründen.

So deaktivieren Sie wp-cron (und richten einen echten Cron-Job ein)

Nachdem Sie nun das „Was“ und „Warum“ kennen, kommen wir zum „Wie“. Wir zeigen Ihnen, wie Sie wp-cron deaktivieren und dann durch Ihren eigenen Server-Cron-Job ersetzen (oder eine andere Lösung).

Der Prozess besteht aus zwei Teilen:

  1. Sie müssen die integrierte wp-cron-Funktion deaktivieren, damit WordPress nicht bei jedem Besuch wp-cron.php ausführt. Dazu müssen Sie nur eine Codezeile zur Datei wp-config.php Ihrer Website hinzufügen.
  2. Sie müssen Ihren eigenen Cron-Job einrichten, um wp-cron.php nach dem von Ihnen festgelegten Zeitplan aufzurufen. Damit kannst du wp-cron.php nach einem bestimmten Zeitplan ausführen, unabhängig davon, ob deine Website Traffic erhält oder nicht.

Deaktivieren Sie wp-cron in WordPress

Um wp-cron zu deaktivieren, müssen Sie der Datei wp-config.php Ihrer Website eine Codezeile hinzufügen. Da dies eine wichtige Konfigurationsdatei ist, empfehlen wir dringend, dass Sie Ihre Website sichern, bevor Sie Änderungen vornehmen (oder zumindest eine Kopie der ursprünglichen wp-config.php-Datei erstellen, damit Sie die Arbeitskopie erneut hochladen können, falls etwas schief geht ).

Um auf die Datei wp-config.php zuzugreifen, kannst du entweder:

  • Verbinde dich über FTP mit deinem Server und finde die Datei im Stammverzeichnis (dasselbe Verzeichnis, das die Ordner wp-admin und wp-content enthält).
  • Verwenden Sie so etwas wie cPanel File Manager, um die Dateien Ihres Servers von Ihrem Webbrowser aus zu durchsuchen.

Sobald Sie ein Backup Ihrer Website und/oder der ursprünglichen wp-config.php-Datei habenfügen Sie das folgende Code-Snippet über der Zeile hinzu, die besagt /* That's all, stop editing! Happy publishing. */

define('DISABLE_WP_CRON', true);

So:

So deaktivieren Sie wp-cron in WordPress

Speichern Sie die Änderungen und laden Sie die Datei bei Bedarf erneut hoch.

Sobald Sie dies getan haben, ruft WordPress die Datei wp-cron.php nicht mehr auf, wenn Leute Ihre Website besuchen.

Richten Sie Ihren eigenen Cronjob ein

Wenn du wp-cron deaktiviert hast, musst du deinen eigenen Cron-Job einrichten, damit die automatischen Aufgaben deiner Website weiterhin ausgeführt werden.

Es gibt zwei Möglichkeiten, wie Sie dies tun können:

  1. Sie können mit Ihrem Hosting Ihren eigenen Cron-Job auf Serverebene erstellen. Der genaue Ablauf variiert je nach Hosting-Provider.
  2. Sie können einen Online-Cron-Dienst verwenden, bei dem es sich um Cloud-basierte Tools handelt, mit denen Sie den Cron-Job über die Server des Dienstes ausführen können. In der Regel haben diese Dienste begrenzte kostenlose Pläne, sodass Sie möglicherweise bezahlen müssen. Zum Glück sind sogar die kostenpflichtigen Dienste recht erschwinglich (zB 12 $ pro Jahr).

Ich zeige Ihnen, wie Sie beide einrichten – aber Sie müssen nur eine dieser Methoden verwenden.

Richten Sie über Ihr Hosting einen Server-Cronjob ein

Der Vorgang zum Einrichten eines Server-Cron-Jobs variiert je nach Host. Einige machen es sehr einfach, andere nicht.

Ich werde cPanel für dieses Beispiel verwenden, weil es die beliebteste Lösung ist, aber ich empfehle, die Support-Dokumentation Ihres Hosts zu konsultieren, wenn Ihr Host cPanel nicht verwendet oder wenn Sie anderweitig nicht sicher sind, wo Sie diese Funktion finden (oder wenn Ihr Gastgeber es überhaupt erlaubt).

Melden Sie sich zunächst bei Ihrem Hosting-Dashboard an und gehen Sie zu cPanel. In der cPanel-Oberfläche sollten Sie ein Tool namens finden Zeitgesteuerte Aufgaben (oder etwas ähnliches). Normalerweise ist es unter der Fortschrittlich Kategorie, kann aber je nach Host unterschiedlich sein.

Wählen Sie dieses Werkzeug aus:

Das cPanel-Cron-Tool

Auf der nächsten Seite finden Sie die Neuen Cron-Job hinzufügen Sektion. Sie sollten Optionen sehen, um das Timing festzulegen, sowie a Befehl.

Das Timing liegt bei Ihnen, aber normalerweise ist es ein guter Ausgangspunkt, es alle 30 Minuten auszuführen, insbesondere bei Shared Hosting. Tatsächlich lassen Sie einige Shared Hosts nicht öfter laufen.

Du kannst wählen Zweimal pro Stunde von dem Allgemeine Einstellungen Drop-down-Menü, das die restlichen Timing-Einstellungen vorkonfiguriert. Oder Sie können verwenden Crontab.guru um die Syntax selbst zu generieren – Sie müssten nur die Details in die entsprechenden Felder einfügen.

Fügen Sie dann die folgende Codezeile zu der hinzu Befehl Kasten:

wget -q -O - >/dev/null 2>&1

Unbedingt ersetzen mit der tatsächlichen URL Ihrer Website.

Zum Beispiel, wenn Ihre Website ist https://basketballfanatic.comdann wäre der richtige Befehl:

wget -q -O - >/dev/null 2>&1

Erstellen eines neuen Cron-Jobs in cPanel

Achten Sie darauf, auf die zu klicken Neuen Cron-Job hinzufügen Schaltfläche, um Ihren Cron-Job zu speichern. Dann sollte es in der Liste der angezeigt werden Aktuelle Cron-Jobs unter.

Verwenden Sie einen Online-Cron-Dienst

Wenn Ihr Host Sie keine Cron-Jobs einrichten lässt oder wenn Sie einfach eine einfachere Erfahrung bevorzugen, möchten Sie vielleicht stattdessen einen dedizierten Cron-Dienst verwenden.

Hier gibt es mehrere beliebte Optionen, darunter die folgenden:

Wir verwenden EasyCron für dieses Tutorial.

EasyCron ist kostenlos für bis zu 200 tägliche Cron-Aufrufe in einem maximalen Intervall von 20 Minuten (Damit können Sie jeden Tag alle 20 Minuten eine einzelne Aufgabe ausführen), was für eine einzelne WordPress-Site ausreichen sollte. Die kostenpflichtigen Pläne sind auch recht erschwinglich und beginnen bei nur 12 US-Dollar pro Jahr.

Um loszulegen, Registrieren Sie sich für ein kostenloses Konto.

Klicken Sie dann auf die + Cron-Job Schaltfläche in der EasyCron-Oberfläche:

Erstellen Sie einen neuen Cron-Job, nachdem Sie wp-cron deaktiviert haben

Sie sehen dann ein Popup, in dem Sie Ihren Cronjob einrichten können.

Im URL zum Aufrufen Feld, eingeben achten Sie darauf, zu ersetzen mit Ihrer tatsächlichen Website-URL.

Dann unter Wann ausführenwählen Alle 30 Minuten (Sie können bei Bedarf öfter auswählen, aber 30 Minuten sind ein guter Ausgangspunkt für die meisten Websites).

Dann klick Cronjob erstellen Um Ihre Einstellungen zu speichern und Ihren Cronjob live zu schalten:

So fügen Sie einen Cron-Job mit EasyCron hinzu

Getan!

Deaktiviere wp-cron heute für eine zuverlässigere Aufgabenplanung

Wp-cron ist das integrierte WordPress-Planungssystem, das sicherstellt, dass die verschiedenen Aufgaben Ihrer Website pünktlich ausgeführt werden, wie z. B. geplante Blog-Posts.

Die eingebaute Funktion hat jedoch einige Nachteile in Bezug auf die Zuverlässigkeit (für wenig frequentierte Seiten) und Leistung (für stark frequentierte Seiten). Aus diesen Gründen möchten Sie vielleicht wp-cron deaktivieren und durch einen echten Cron-Job ersetzen, was wir Ihnen in diesem Beitrag gezeigt haben.

Weitere Möglichkeiten zur Verbesserung der Leistung Ihrer Website finden Sie in unserem vollständigen Leitfaden zur Verbesserung der WordPress-Leistung.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Verified by MonsterInsights
Яндекс.Метрика