Les tâches CRON sont utilisées pour planifier des tâches à des heures fixes, des dates ou des intervalles périodiques sur votre site WordPress. Quelques exemples d’une tâche cron de WordPress peuvent impliquer la planification d’un article à publier, la vérification des mises à jour ou l’exécution d’un plugin de sauvegarde selon un calendrier prédéfini.

Dans WordPress, ceci est géré par WP-Cron, qui est utilisé pour simuler un cron système. Cependant, en fonction de la quantité de trafic vers votre site, l’utilisation du gestionnaire de cron intégré peut réellement commencer à avoir un impact sur le temps de chargement de vos pages. Donc aujourd’hui, nous allons vous montrer comment désactiver WP-Cron (wp-cron.php) et à la place utiliser un cron système pour des performances plus rapides.

Problèmes de performance avec WP-Cron

Nous traitons avec un grand nombre de sites très fréquentés et exigeants chez Kinsta. Pour cette raison, nous avons vu beaucoup de problèmes de performance avec le gestionnaire de Cron intégré de WordPress : WP-Cron. Tout d’abord, il est important de comprendre que WP-Cron n’est pas une vraie tâche de cron, c’est simplement ce que WordPress a créé pour imiter ce que fait un cron système.

WP-Cron ne fonctionne pas en continu. Par défaut, le wp-cron.php se déclenche à chaque chargement de page, ce qui peut causer des problèmes sur les sites très fréquentés. Si un site n’a pas assez de workers PHP, il arrive parfois qu’une requête arrive, WordPress va générer le cron, mais le cron doit attendre le worker, et donc il reste là.

Le scénario inverse est également vrai. Si un site n’a pas beaucoup de trafic, les horaires pourraient être manqués en raison du fait que personne n’a chargé une page.

Une meilleure approche est de désactiver WP-Cron et d’utiliser le cron système à la place. Cela fonctionne selon un calendrier prédéfini et est même recommandé dans le manuel officiel du plugin.

Comment désactiver WP-Cron

Pour désactiver WP-Cron, ajoutez ce qui suit à votre fichier wp-config.php, juste avant la ligne qui dit « That’s all, stop editing! Happy blogging. » Note : Ceci le désactive pour qu’il ne s’exécute pas lors du chargement des pages, pas lorsque vous l’appelez directement via wp-cron.php.

define('DISABLE_WP_CRON', true);
Désactiver WP-Cron

Désactiver WP-Cron

Comment programmer le système Cron système

Vous devrez ensuite planifier wp-cron.php à partir de votre serveur. La bonne nouvelle est que si vous êtes un client Kinsta, notre déclencheur côté serveur lance wp-cron.php toutes les 15 minutes par défaut. 💪 Ceci exécutera tous les crons WordPress programmés. Et si nécessaire, vous pouvez augmenter la fréquence en vous adressant à notre équipe de support.

Si vous êtes familier avec SSH, vous pouvez également suivre notre tutoriel sur la gestion des crons serveur en ligne de commande Kinsta. Tous nos plans d’hébergement incluent l’accès SSH.

Si vous n’êtes pas un client Kinsta, nous vous recommandons de consulter ces ressources pour apprendre à configurer les crons système :

Créer une tâche Cron dans cPanel

Si vous utilisez un hébergeur avec cPanel, vous pouvez également créer un cron système à partir de son panneau de contrôle. Note : assurez-vous d’avoir d’abord désactivé le WP-Cron par défaut comme ci-dessus.

Étape 1

Connectez-vous à cPanel. Dans la section Avancé, cliquez sur Cron Jobs.

cPanel cron jobs

cPanel cron jobs

Étape 2

Dans la section Ajouter une nouvelle tâche Cron, vous pouvez choisir parmi un certain nombre d’horaires prédéfinis différents, comme deux fois par heure ou une fois par semaine. Votre fournisseur d’hébergement a probablement une limite quant à la fréquence à laquelle il autorise l’exécution des tâches cron. Deux fois par heure est un paramètre courant pour les hébergeurs mutualisés.

cPanel paramètres cron job

cPanel paramètres cron job

Étape 3

Ajoutez la commande suivante. Remplacez https://domaine.com par votre nom de domaine. Cette commande peut varier légèrement en fonction de la configuration de votre hébergement. Puis cliquez sur « Ajouter une nouvelle tâche Cron ».

wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
cPanel ajouter une nouvelle tâche cron

cPanel ajouter une nouvelle tâche cron

La partie >/dev/null 2>&1 de la commande ci-dessus désactive les notifications par email.

Planifier les crons avec une solution tierce

Si vous n’êtes pas à l’aise avec la configuration des tâches cron sur votre serveur ou si votre hébergeur ne fournit pas d’accès, vous pouvez également utiliser une solution tierce comme EasyCron.

5
Partages