So verwalten Sie WordPress Cron-Jobs

Veröffentlicht: 2021-05-14
WordPress-Cron-Job
Folgen Sie @Cloudways

Viele WordPress-Entwickler, insbesondere Anfänger, haben eine gemeinsame Frage: „Was ist WordPress-Cron“ mit „Wie verwaltet man WordPress-Cron-Jobs?“ knapp an zweiter Stelle.

Die Antwort ist einfach: Verwenden Sie eine der Methoden zur Verwaltung von WordPress-Cronjobs, die ich in diesem Artikel skizzieren werde.

  • Was ist WordPress-Cron?
  • So verwalten Sie einen WordPress-Cron-Job
    • So verwalten Sie WordPress-Cron-Jobs mit dem Plugin
      • Schritt 1: Installieren Sie das WP Control-Plugin
      • Schritt 2: Anzeigen und Verstehen von Cron-Ereignissen
      • Schritt 3: Cron-Ereignis bearbeiten
      • Schritt 4: Hinzufügen eines benutzerdefinierten Zeitintervalls
      • Schritt 5: Hinzufügen eines neuen Cron-Ereignisses
    • So verwalten Sie WordPress Cron-Jobs mit WP CLI
  • So richten Sie einen echten Cron-Job ein

Cron ist ein Standard-UNIX-Dienstprogramm zum Planen der Aufgabenausführung (Skript oder Befehl) zu einem bestimmten Zeitpunkt, Datum oder Intervall. Die auszuführende Aufgabe wird als Cron-Job bezeichnet. Wie Sie sich vorstellen können, besteht der Zweck eines Cron-Jobs darin, sich wiederholende Aufgaben zu automatisieren, damit Sie Ihre Zeit produktiver nutzen können.

Der WordPress-Cron-Job unterscheidet sich jedoch geringfügig vom Standard-Cron, und deshalb müssen Sie verstehen, was ein WordPress-Cron ist und wie er funktioniert, bevor Sie in die Aktion und den Prozess eintauchen.

Was ist WordPress-Cron?

WordPress verfügt über ein eigenes Cron-System zum Planen von Aufgaben wie das Suchen nach Updates, das Planen eines Beitrags zur Veröffentlichung und das Löschen von Kommentaren aus dem Papierkorb. Alle Cron-Jobs werden von WP-Cron abgewickelt.

Während der Name (und die Hauptidee) von UNIX cron stammt, funktioniert WordPress cron nicht so und verwendet Intervalle für die Aufgabenplanung. Die von WordPress bereitgestellten Standardzeitintervalle sind stündlich, zweimal täglich, täglich und wöchentlich. Hier sind die zeitbasierten Aufgaben davon abhängig, dass Benutzer Ihre Website besuchen, was bedeutet, dass WordPress Cron nur ausgeführt wird, wenn ein Benutzer Ihre Website besucht.

Verwaltetes WordPress-Hosting ab 10 $/Monat

Cron-Jobs ganz einfach auf der schnellsten Cloud-Hosting-Plattform hinzufügen und planen.

3 TAGE KOSTENLOSE TESTVERSION

Mit anderen Worten, WordPress Cron wird ausgeführt, wenn die Seite geladen wird. Manchmal ist dies nicht so zuverlässig, und deshalb bevorzugen viele Benutzer einen Cron-Job auf Serverebene gegenüber dem WP-Cron-Job.

In diesem Artikel zeige ich Ihnen, wie Sie WordPress-Cron-Jobs verwalten und einen echten Cron-Job für Ihre WordPress-Site einrichten.

So verwalten Sie einen WordPress-Cron-Job

Es gibt viele Möglichkeiten, WordPress-Cronjobs einzurichten und zu verwalten, aber ich zeige Ihnen zwei beliebte Methoden.

Das erste verwendet ein Cron-Management-Plugin wie WP Crontrol, mit dem Sie WordPress-Cron-Jobs direkt über das WP-Dashboard hinzufügen, ändern und verwalten können. Sie können auch einen Cron-Job erstellen, Hooks und Funktionen erstellen und benutzerdefinierte Zeitintervalle für Aufgaben definieren.

Und die zweite Methode ist mit WordPress CLI.

So verwalten Sie WordPress-Cron-Jobs mit dem Plugin

Ich verwende das Plugin WP Crontrol, mit dem Sie WordPress Cron für Ihre WordPress-Anwendung anzeigen und steuern können. Es ist das beliebte Plugin zur Verarbeitung von WP-Cron-Jobs und hat mehr als 100.000 aktive Installationen.
Dies ist die einfachste Methode zum Verwalten von WordPress-Cron-Jobs, und Sie können WordPress-Cron-Ereignisse schnell anzeigen, bearbeiten, erstellen, löschen und noch viel mehr tun.

Also lasst uns anfangen!

Schritt 1: Installieren Sie das WP Control-Plugin

Wie jedes andere Plugin müssen Sie WP Crontrol aus dem Plugin-Repository installieren und aktivieren. Sobald es installiert ist, werden Sie feststellen, dass eine neue Option „Cron-Ereignisse“ auf der Registerkarte „ Tools “ erschienen ist.

Cron-Ereignisse

Schritt 2: Anzeigen und Verstehen von Cron-Ereignissen

Als nächstes müssen Sie auf Cron-Ereignisse klicken und Sie sehen eine Liste der Cron-Ereignisse, die in Ihrer WordPress-Anwendung ausgeführt werden.

Liste der Cron-Ereignisse

In diesem Abschnitt können Sie Ihre Cron-Ereignisse ausführen, bearbeiten und löschen. Sie sehen diese Option, wenn Sie mit der Maus über ein beliebiges Cron-Ereignis fahren.

Außerdem finden Sie nützliche Informationen zu diesen Cronjobs und können schnell erkennen, welcher Cronjob für welchen Zweck verwendet wird und vieles mehr. In der ersten Spalte zeigt Hook den Namen des Hooks an, der vom WordPress-Kern oder einem beliebigen Plugin verwendet wird. Zum Beispiel zeigt das Präfix „ wp “ einfach an, dass es sich um einen Cron des WordPress-Kerns handelt. Sie werden auch feststellen, dass es keine Option zum Löschen dieser Cron-Ereignisse gibt, Sie können jedoch die Optionen „Jetzt bearbeiten “ und „ Jetzt ausführen “ verwenden. In ähnlicher Weise werden Sie für Ihre Plugins andere Präfixe bemerken (z. B. für WooCommerce „wc“ oder „woocommerce“).

Die zweite Spalte Argumente enthält nur die Argumente, die an die Hook-Funktionen übergeben werden.

Die dritte Spalte zeigt, wann dieser Cronjob das nächste Mal ausgeführt wird.

Die vierte Spalte Aktion zeigt, welche Aktion dieser Cron ausführen wird (die „Funktion“ des Cron-Jobs).
Die letzte Spalte definiert die Wiederholungszeiten der Cron-Jobs. Dies ist im Grunde das Zeitintervall für die geplante Aufgabe.

Schritt 3: Cron-Ereignis bearbeiten

Lassen Sie uns nun einen WP-Cron-Job bearbeiten, um dieses Plugin zu testen.

Gehen Sie zum Namen eines Hooks und klicken Sie auf Bearbeiten . Ein neuer Abschnitt „ Cron-Ereignis bearbeiten “ wird angezeigt, in dem Sie verschiedene Felder sehen. In meinem Fall habe ich den Hook „wp_privacy_delete_old_export_files“ bearbeitet. Als Nächstes ändere ich die Wiederholung dieses Cron-Jobs auf „Alle fünfzehn Minuten“.

Cron-Ereignisse bearbeiten

Schritt 4: Hinzufügen eines benutzerdefinierten Zeitintervalls

Als Nächstes zeige ich Ihnen, wie Sie ein benutzerdefiniertes Zeitintervall für Ihre Cron-Ereignisse hinzufügen. Klicken Sie dazu auf die Registerkarte „ Cron-Zeitplan “ und es erscheint ein neuer Bildschirm, auf dem Sie die Details der geplanten Zeitintervalle sehen. Scrollen Sie als Nächstes nach unten, wo Sie „ Cron - Zeitplan hinzufügen “ sehen. Füllen Sie die Felder aus und klicken Sie auf Cron- Zeitplan hinzufügen .

Cron-Zeitplan hinzufügen

Beachten Sie, dass die Eingabe für das Intervall in Sekunden erfolgt. Ich werde 600 Sekunden verwenden, um das Intervall auf 10 Minuten einzustellen.

Jetzt können Sie Ihr Cron-Ereignis bearbeiten und durch Ihr eigenes benutzerdefiniertes Intervall ersetzen.

Cron-Ereignis bearbeiten

Schritt 5: Hinzufügen eines neuen Cron-Ereignisses

Jetzt wissen Sie, wie Sie die einfachen Aufgaben für Ihre Cron-Ereignisse verwalten, aber was ist, wenn Sie Ihren eigenen Cron-Job für Ihre WordPress-Anwendung hinzufügen möchten. Keine Sorge, es ist so einfach und alles, was Sie tun müssen, ist, die nachstehenden Anweisungen zu befolgen.

Klicken Sie zuerst auf Cron-Ereignis hinzufügen und Sie gelangen in den Abschnitt Cron hinzufügen. Geben Sie dann einfach einen Hook-Namen ein, wie Sie möchten (sollte der normalen PHP-Namenskonvention folgen und keine Leerzeichen enthalten).

Fügen Sie dann Argumente hinzu (es ist optional) und in meinem Fall ist es leer. Wählen Sie als Nächstes eine beliebige Option aus und geben Sie eine Zeit in das Feld „ Nächster Lauf “ ein. Wählen Sie zuletzt eine Wiederholungszeit (geplante Zeit) für Ihren neuen Cron und klicken Sie auf Ereignis hinzufügen .

Cron-Ereignis hinzufügen

Wenn Sie diesbezüglich Fragen haben, können Sie die Einstellungen aller laufenden Cron-Jobs in Ihren Cron-Ereignissen überprüfen.

Nachdem Sie einen neuen Cron-Job hinzugefügt haben, gehen Sie zur Registerkarte Cron- Ereignisse und überprüfen Sie Ihren neu erstellten Cron. Sie werden feststellen, dass in der Aktionsspalte None (Fehler) angezeigt wird. Dies liegt daran, dass Sie für diesen Cronjob keine Aktionen definiert haben. Dazu müssen Sie ein paar Zeilen Code in die Datei functions.php des Themes schreiben und eine Aktion hinzufügen.

kein Fehler

Hinweis: Bevor Sie fortfahren, wird dringend empfohlen, die WordPress-Site zu sichern.

Lassen Sie uns die Datei öffnen und die folgenden Codezeilen direkt nach <?php hinzufügen:

 add_action( 'cloudways_new_cron', 'cw_function' );
Funktion cw_function() {
wp_mail( '[email protected]', 'Cloudways Cron', 'Cloudways - ein verwaltetes Cloud-Hosting!' );
}

Vergessen Sie nicht, meine E-Mail-Adresse durch Ihre eigene zu ersetzen.

Funktion PHP-E-Mail-Adresse
Sie können im obigen Bild sehen, dass ich es direkt mit dem WordPress-Dashboard bearbeitet habe. Wenn Sie möchten, können Sie diese Datei über einen FTP-Client wie FileZilla bearbeiten.

Lassen Sie uns als Nächstes den E-Mail-Posteingang überprüfen und sehen, ob wir die Nachricht erhalten.

Cron-E-Mail

Tada! Es ist fertig und wir haben erfolgreich ein neues Cron-Ereignis hinzugefügt.

So verwalten Sie WordPress Cron-Jobs mit WP CLI

Sie können auch alle Ihre WordPress-Cronjobs über die WordPress-CLI anzeigen und verwalten. Bei Cloudways müssen Sie das Terminal starten und sich mit den Server-Anmeldeinformationen anmelden.

Als nächstes platzieren Sie den Pfad Ihrer WordPress-Anwendung. In meinem Fall war die URL:

 cd Anwendungen/urrghmpqks/public_html/ 

Cron-Job WP-CLI

Als nächstes müssen Sie diesen Befehl ausführen:

 wp Cron-Ereignisliste 

Cron-Job WP-CLI

Sie können den Hook-Namen, die nächste Ausführungszeit, den nächsten Ausführungsrelativ und die Wiederholung (geplante Zeit) sehen.

So richten Sie einen echten Cron-Job ein

Jetzt wissen Sie, was der WordPress-Cronjob ist und wie er funktioniert. Was ist, wenn Sie ihn aus irgendeinem Grund durch einen echten Cron-Job ersetzen möchten, z.

Also lasst uns anfangen!

Schritt 1: Öffnen und bearbeiten Sie die Datei wp-config.php

Zuerst müssen Sie die wp-config-Datei mit einem FTP-Client wie FileZilla oder einem SSH-Client wie puTTY öffnen. Bearbeiten Sie danach die Datei und platzieren Sie die folgende Codezeile vor der Zeile, in der es heißt /* Das ist alles, hören Sie auf zu bearbeiten! Viel Spaß beim Bloggen. */

Code:

 define('DISABLE_WP_CRON', true); 

Bearbeiten Sie die wp-Konfigurationsdatei

Dieser Code deaktiviert die laufenden Cron-Ereignisse auf Ihrer WordPress-Seite und Sie können jetzt einen echten Cron-Job erstellen.

Schritt 2: Hinzufügen eines neuen Cron-Jobs zum Server

Melden Sie sich als Nächstes bei Ihrer Cloudways-Plattform an und gehen Sie dann zum Bereich „Anwendungsverwaltung“ > „ Cron-Job-Verwaltung“ > „ Erweitert “.

Hinzufügen eines neuen Cronjobs

Fügen Sie dann den folgenden Befehl hinzu und klicken Sie auf Änderungen speichern:
*/5 * * * * wget -q -O - 'https://wordpress-413270-1299955.cloudwaysapps.com/wp-cron.php?doing_wp_cron' >/dev/null 2>&1

erweiterter Cron-Tab

Im obigen Befehl habe ich zunächst ein Intervall von fünf Minuten für den Cron-Job definiert. Sie können diese Seite verwenden, um den Zeitplanausdruck zu überprüfen. In meinem Fall ist */5 * * * * der Intervallausdruck.

Herzliche Glückwünsche! Sie haben erfolgreich einen echten Cronjob hinzugefügt.

Letzte Worte!

Ich hoffe, dieser Artikel hat Ihnen geholfen zu verstehen, wie der WordPress-Cron-Job funktioniert. Ich habe zwei Methoden zur Verwaltung von WordPress-Cron-Jobs besprochen; eine über ein Plugin und die andere über WP-CLI. Ich habe auch besprochen, wie man einen echten Cron-Job auf einem Live-Server einrichtet.

Wenn Sie Fragen haben, lassen Sie es mich bitte im Kommentarbereich unten wissen.