WordPress dispose d’un planificateur de tâches cron intégré, appelé wp-cron. Ce planificateur peut être utilisé pour exécuter diverses tâches à des intervalles prédéfinis, comme créer des sauvegardes planifiées, publier des articles programmés, vérifier les mises à jour et exécuter des tâches d’extensions. Cependant, wp-cron peut parfois provoquer des problèmes de performance, en particulier sur les sites à fort trafic. Il existe toutefois un moyen de désactiver wp-cron et d’activer des tâches cron externes.

Dans cet article, nous allons parcourir les étapes nécessaires pour désactiver le cron de WordPress et activer des tâches cron externes.
Contents
Identifier le système cron WordPress actuel
Avant de pouvoir commencer à désactiver wp-cron et à activer des tâches cron externes, nous devons déterminer quel système est actuellement utilisé. Il existe deux possibilités :
- Linux Cron est un planificateur de tâches au niveau système qui s’exécute directement sur le serveur. Il peut exécuter des tâches à des horaires ou intervalles spécifiques.
- cPanel Cron : c’est un planificateur de tâches intégré au panneau de contrôle d’hébergement cPanel. Il peut exécuter des tâches à des horaires ou intervalles spécifiques.
Si vous n’êtes pas sûr du système utilisé par votre hébergeur, vous pouvez le contacter pour lui poser la question.
Désactiver la tâche wp-cron
Une fois que vous savez quel système cron est utilisé, l’étape suivante consiste à désactiver wp-cron. Pour cela, vous devez ajouter la ligne de code suivante à votre fichier wp-config.php :
define('DISABLE_WP_CRON', true);Ce code indique à WordPress de ne pas exécuter wp-cron automatiquement. Une fois ce code ajouté, vous devez mettre en place une tâche cron externe pour exécuter régulièrement le fichier wp-cron.php.
Mettre en place une tâche cron externe
Pour mettre en place une tâche cron externe, vous devrez utiliser soit Linux Cron, soit cPanel Cron, selon le système utilisé par votre hébergeur. Voici les étapes pour chaque système :
Linux Cron :
- Connectez-vous à votre serveur via SSH.
- Exécutez la commande suivante pour ouvrir l’éditeur crontab :
L’une des tâches essentielles dans la gestion d’un site web consiste à s’assurer que vous disposez d’une sauvegarde de vos données en cas de perte ou de corruption. WP Staging est une extension populaire pour créer des environnements de staging sur les sites WordPress. Elle propose également une fonction de sauvegarde qui vous permet de planifier des sauvegardes des données de votre site.
Dans cet article, nous allons vous guider pour désactiver les tâches wp-cron normales de WordPress et utiliser un cron externe pour l’extension de sauvegarde WP Staging et toutes les autres extensions qui dépendent de tâches cron.
crontab -e- Ajoutez la ligne de code suivante au fichier crontab :
*/15 * * * * /usr/bin/php /path/to/your/wordpress/installation/wp-cron.php > /dev/null 2>&1Ce code indique au système d’exécuter le fichier wp-cron.php toutes les 15 minutes. Veillez à remplacer « /path/to/your/wordpress/installation/ » par le chemin vers votre installation WordPress.
- Enregistrez et fermez le fichier crontab.
cPanel Cron :
- Connectez-vous à cPanel et allez dans la section Cron Jobs.
- Cliquez sur le bouton « Add New Cron Job ».
- Dans le champ « Command », ajoutez le code suivant :
/usr/bin/php /home/username/public_html/wp-cron.phpVeillez à remplacer « username » par votre véritable nom d’utilisateur cPanel.
- Définissez l’intervalle sur « Every 15 minutes ».
- Cliquez sur le bouton « Add Cron Job » pour enregistrer les modifications.
C’est tout ! Vous avez désormais désactivé wp-cron et mis en place une tâche cron externe pour exécuter régulièrement le fichier wp-cron.php.
Conclusion
Désactiver wp-cron et activer des tâches cron externes peut améliorer les performances de votre site WordPress, en particulier si vous avez beaucoup de tâches planifiées. En suivant les étapes décrites dans cet article, vous pouvez facilement mettre en place une tâche cron externe et garantir que vos tâches planifiées s’exécutent sans accroc. Si vous avez des questions ou des problèmes, n’hésitez pas à contacter votre hébergeur pour obtenir de l’aide.