Pourquoi remplacer le Cron intégré de WordPress (WP-Cron) ?
Par défaut, WordPress utilise WP-Cron, un « cron virtuel » qui ne s’exécute que lorsque quelqu’un visite votre site. Cela peut conduire à :
- Les messages ou courriels programmés manqués ou retardés.
- Performance inefficace sur les sites à fort trafic.
Une véritable tâche cron de serveur est plus fiable et s’exécute selon un calendrier fixe, même lorsque votre site n’a pas de visiteurs.
Étape 1 : Désactiver WP-Cron dans WordPress
Vous devez empêcher WordPress d’exécuter son fichier par défaut wp-cron.php à chaque chargement de page.
- Ouvrez le fichier
wp-config.phpde votre site (situé à la racine de votre installation WordPress). - Ajoutez la ligne suivante au-dessus de la ligne qui dit
/* That's all, stop editing ! */:
define('DISABLE_WP_CRON', true);
Enregistrer le fichier.
Étape 2 : Configurer la tâche Cron sur votre serveur
Cela dépend de votre environnement d’hébergement.
A. Si vous utilisez cPanel
- Connectez-vous à votre panneau de contrôle d’hébergement (par exemple, cPanel).
- Recherchez Cron Jobs (généralement dans la section Advanced ).
- Cliquez sur Add New Cron Job.

Définissez le calendrier (par exemple, toutes les 5 minutes) :
*/5 * * * *
Ajoutez cette commande (remplacez exemple.com par votre domaine actuel) :
wget -q -O - https://example.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1
Cette commande demande au serveur d’appeler silencieusement le fichier WP-Cron toutes les 5 minutes.
- Cliquez sur Add New Cron Job.

B. Si vous utilisez SSH ou un VPS (avancé)
- Connectez-vous en SSH à votre serveur.
- Ouvrez votre crontab avec :
crontab -e
- Ajoutez cette ligne pour lancer WP-Cron toutes les 5 minutes :
*/5 * * * * wget -q -O - https://example.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1
Sauvegarder et quitter.
Optionnel : Utiliser curl au lieu de wget
Si wget n’est pas disponible, vous pouvez utiliser curl:
*/5 * * * * curl -s https://example.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1
Testez votre tâche cron en visitant l’URL wp-cron.php dans votre navigateur pour confirmer qu’elle fonctionne sans erreur.
Pour une meilleure fiabilité, évitez de l’exécuter trop fréquemment – toutes les5 ou 10 minutes est un bon équilibre.
Assurez-vous que le fichier .htaccess ou le pare-feu de votre site ne bloque pas les requêtes vers wp-cron.php.
Vous avez maintenant désactivé WP-Cron et l’avez remplacé par un vrai job cron basé sur le serveur. Vos tâches programmées dans WordPress – comme les emails (y compris MailerPress), les mises à jour automatiques, ou les actions des plugins – s’exécuteront maintenant de manière fiable et à temps.