Anleitung: Wie Sie WP-CLI für WordPress-Cronjobs auf einem Managed-Server bei Hetzner richtig einrichten

Inhaltsverzeichnis

WP-CLI ist ein leistungsstarkes Kommandozeilen-Werkzeug zur Verwaltung von WordPress-Installationen.
Auch auf einem Managed-Server von Hetzner lässt es sich problemlos installieren und nutzen – etwa, um WordPress-Cronjobs zuverlässig und serverseitig auszuführen.

So installieren Sie WP-CLI auf Ihrem Managed Server bei Hetzner

Die Installation von WP-CLI auf Managed Servern bei Hetzner ist relativ einfach und schnell erledigt. Hetzner beschreibt das auch in seiner Dokumentation. Melden Sie sich per SSH auf Ihrem Server an und führen Sie in der Konsole folgenden Befehl aus:

software install wp-cli

Sollte die Installation beim ersten Versuch fehlschlagen, können Sie den Befehl einfach erneut ausführen oder mit software reinstall wp-cli wiederholen.

Testen Sie nun, ob WP-CLI bei Ihnen ordnungsgemäß läuft, indem Sie folgenden Befehl eingeben:

wp --info

Erhalten Sie eine Ausgabe mit vielen Infos zu WP-CLI auf Ihrem System, ist es einsatzbereit.

Deaktivieren Sie die Standard-CronJobs von WordPress

Standardmäßig führt WordPress seine geplanten Aufgaben nicht über das Betriebssystem, sondern beim Seitenaufruf Ihrer Webseite aus. Immer wenn ein Besucher oder ein interner Prozeß die Website aufruft, prüft WordPress über die Datei wp-cron.php, ob Aufgaben anstehen, und führt sie dann aus. Diese Methode funktioniert grundsätzlich auf allen Hosting-Paketen, hat aber zwei Nachteile: Lädt niemand die Seite, bleiben geplante Aufgaben unerledigt. Bei stark frequentierten Seiten kann der zusätzliche Aufruf von wp-cron.php die Ladezeit unnötig verlängern. Besonders bei Sicherungen, E-Mail-Automatisierungen oder größeren Plattformen ist daher eine serverseitige Steuerung deutlich zuverlässiger.

Um die interne Ausführung zu deaktivieren und danach einen CronJob dafür einzurichten, genügt ein einziger Eintrag in der wp-config.php. Fügen Sie dort oberhalb der Zeile „That’s all, stop editing! Happy publishing.“ folgende Zeile hinzu:

define('DISABLE_WP_CRON', true);

Damit verhindert WordPress den automatischen Aufruf seiner Cronjobs bei jedem Seitenaufruf über wp-cron.php. Die Aufgaben werden dann ausschließlich durch einen externen CronJob ausgeführt – beispielsweise per WP-CLI oder über einen systemweiten Scheduler Ihres Hosting-Anbieters. Auf Managed-Servern, wie bei Hetzner, ist dies die empfohlene und stabilste Lösung.

Richten Sie den CronJob bei Managed Server von Hetzner ein

Den CronJob können Sie direkt in der konsoleH einrichten und einstellen. Hier gibt es einige Punkte zu beachten.

Finden Sie Ihren Benutzer heraus. Wenn Sie sich mit Ihrem Hauptbenutzer angemeldet haben, kennen Sie den Namen bereits. Ansonsten finden Sie ihn in der Serververwaltung von Hetzner oder über die Konsole per folgendem Befehl heraus:

whoami

Kopieren Sie die Ausgabe oder merken Sie sie sich.

Wechseln Sie in das Verzeichnis Ihrer WordPress-Installation und lassen Sie sich Sie sich den absoluten Pfad dorthin anzeigen.

pwd

Kopieren Sie die Ausgabe oder merken Sie sie sich.

Bei Interpreter wählen Sie die PHP-Version, die Sie auch für Ihre Webseite nutzen. In diesem Fall nutzen wir PHP 8.2.

Unter Skript (absoluter Pfad) nutzen Sie den folgenden Code, den Sie aber mit den vorherigen beiden Informationen anpassen müssen.

/usr/home/ssh_hauptbenutzer/.linuxbrew/bin/wp --path=/usr/www/users/ssh_hauptbenutzer/webseitenverzeichnis cron event run --due-now --quiet >> /usr/www/users/ssh_hauptbenutzer/wp-cron.log 2>&1
    • Ersetzen Sie dabei ssh_hauptbenutzer durch Ihren Benutzernamen.
    • Ersetzen Sie dabei den Pfad /usr/www/users/ssh_hauptbenutzer/webseitenverzeichnis hinter path durch Ihren absoluten Pfad zu Ihrer Webseite.

    Unter Ausführungszeiten wählen Sie manuell aus und stellen das passende Intervall für Ihre Webseite ein.

    Welche Ausführungszeiten des CronJobs bei welchen Arten von WordPress-Webseiten sinnvoll sind

    Je nachdem, welche Art von Webseite Sie mit WordPress betreiben, ist eine unterschiedliche Ausführungszeit Ihres CronJobs sinnvoll.

    Art der WordPress-WebseiteAusführungszeit des CronJobs
    Normale, statischere Seiten ohne viele Veränderungenalle 10-15 Minuten
    Normales Mitgliederportalalle 5 Minuten
    Aktive Plattform mit vielen Hintergrundprozessenalle 1-3 Minuten

    Hetzner erlaubt als kleinste Intervalle jede Minute oder alle fünf Minuten – nichts dazwischen. Testen Sie bei aktiven Plattformen, ob ein Intervall von einer oder fünf Minuten für Ihre Anforderungen genügt.

    Kontrollieren Sie Ihren CronJob

    Unter Zusammenfassung sehen Sie bei Hetzner den vollständigen Cron-Befehl.
    Wenn Sie --quiet entfernen, werden zusätzlich Erfolgs- und Statusmeldungen protokolliert.
    Mit der gezeigten Variante (--quiet) erscheinen in der Logdatei nur Fehlermeldungen – ideal für den Dauerbetrieb.

    */5 * * * * /usr/bin/php82 /usr/home/ssh_hauptbenutzer/.linuxbrew/bin/wp --path=/usr/www/users/ssh_hauptbenutzer/webseitenverzeichnis cron event run --due-now --quiet >> /usr/www/users/ssh_hauptbenutzer/wp-cron.log 2>&1

    Mit dieser Einstellung werden nur Fehler in der Protokollierungsdatei eingetragen. Wenn Sie ihn das erste mal einrichten, können Sie den Parameter –quiet weglassen oder entfernen. Dann sehen Sie in der Protokolldatei unter /usr/www/users/ssh_hauptbenutzer/wp-cron.log, was alles ausgeführt wurde.

    CronJob bei Hetzner bei einem Managed Server für WordPress und WP-CLI einrichten - fertige Einstellungen in der Übersicht

    Fazit: Funktionierende und zeitsparende Einrichtung eines CronJobs bei einem Managed Server bei Hetzner

    Mit dieser Einrichtung läuft der WordPress-Cron auf Ihrem Hetzner-Managed-Server zuverlässig und wartungsfrei. Sie vermeiden damit die typischen Fehlkonfigurationen vieler Anleitungen aus dem Internet, KI-Anleitungen und sparen sich Zeit und Fehlersuche.

    Mit WP-CLI und einem korrekt eingerichteten System-Cronjob auf Ihrem Managed-Server bei Hetzner läuft der Aufgabenabarbeitung und Wartung Ihrer WordPress-Webseite zuverlässig, ressourcenschonend und unabhängig vom Seitenaufruf.

    Diese Lösung ist stabiler als der standardmäßige WordPress-Cron und erspart langfristig manuelle Eingriffe oder unzuverlässige Plugin-Aufrufe.

    Wenn Sie Unterstützung bei der Einrichtung oder Optimierung Ihrer WordPress-Webseite wünschen, stehe ich Ihnen gerne beratend zur Seite. Auch helfe ich dabei, WordPress-Systeme auf verschiedenen Serverumgebungen zuverlässig und wartungsarm zu betreiben – von der Erstellung Ihrer einzigartigen Webseite bis zur laufenden Pflege.

    5/5 - (1 vote)

    Schreiben Sie einen Kommentar

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

    Webseite erstellen lassen?

    Lassen Sie uns herausfinden, wie wir Ihre Darstellung im Internet verbessern!