Ich habe eine Reihe von eigenständigen WordPress-Sites und WordPress Multisite-Netzwerk von Sites auf meinem Server. Es gibt Zeiten, in denen es zu viele Websites gibt, die alle Cron-Jobs zu schnell in der Nähe ausführen. Ich versuche, besser zu kontrollieren, wann Cron-Jobs auf jeder WordPress-Website ausgetriggers werden.
Ist es möglich, WordPress Cron-Jobs zu deaktivieren, wenn sie irgendwo ausgetriggers werden, und sie ausschließlich auf ./wp-cron.php
zu ./wp-cron.php
? Wenn das so ist, wie?
Ich möchte Cron-Jobs über Linux ./wp-cron.php
, um die ./wp-cron.php
jeder Domain zu den von mir angegebenen Zeiten zu erreichen. In der Theorie sollte dies die meisten Server-Probleme, die ich erlebt habe, lindern.
Ist dies eine ideale Lösung, um die Cron-Jobs auf jeder meiner WordPress-Seiten besser zu kontrollieren?
Gibt es etwas, was ich in WordPress selbst tun sollte, was die Cron-Jobs besser kontrollieren könnte, damit ich nicht zu viele Sites bekomme, die alle ihre Cron-Jobs gleichzeitig ausführen?
Beim Versuch, Serverressourcen zu schonen, sind Cron-Jobs der Täter.
Um WordPress Cron Jobs zu deaktivieren, legen Sie diese in wp-config.php
:
define('DISABLE_WP_CRON', true);
Einen Cron-Job unter Linux zum Beispiel mit cPanel einplanen …
Dies ist der Befehl, den Sie ausführen könnten:
wget -q -O - http://www.your-domain.org/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Das Ende des obigen Befehls unterdrückt nur irgendeine Ausgabe.
Wählen Sie einfach das Intervall Ihrer Wahl für die Einrichtung Ihres Cron-Jobs in cPanel oder SSH oder wie immer Sie Ihren Cron-Job einrichten und verwenden Sie den obigen Befehl.
Der obige Befehl weist den Linux-Server an, wp-cron
über wget
auszuführen, wodurch das Skript wp-cron.php
, seine Aufgabe in Ihrem Zeitplan statt auf jeder Seitenansicht wp-cron.php
. Dies verringert die Anzahl der processe auf dem Server.
Ich habe sofort einen Unterschied in meiner Serverlast festgestellt, nachdem ich diese Änderung vorgenommen habe.