Démarrer votre site WordPress en quelques minutes

Comment configurer et gérer les tâches Cron pour WordPress?

Dernière mise à jour le 19 novembre 2024 Publié le 5 novembre 2024
Comment configurer et gérer les tâches Cron pour WordPress?

Vous avez entendu parler des tâches cron et vous demander comment les utiliser? Vous aimeriez tirer parti de cette solution pour automatiser certaines tâches mais craignez de causer des problèmes? Ne cherchez pas plus loin! Nous sommes là pour vous aider et vous guider dans l’utilisation des tâches cron.

Cron est un utilitaire servant à planifier l’exécution des tâches à un moment précis ou un intervalle spécifique. Le script ou la commande qui est alors exécuté est connue comme une tâche cron. 

Comme vous pouvez le deviner, l’objectif d’un cron job est d’automatiser des tâches répétitives. Cela vous permet de consacrer votre temps et votre attention à votre contenu.

Comme tout système, la mise en place d’une tâche automatisée (cron) nécessite toutefois une configuration initiale et des ajustements afin d’être optimale. Sans ces précautions,  l’utilisation d’une tâche Cron peut avoir des conséquences négatives. C’est d’ailleurs le cas pour la majorité des sites WordPress sur la planète ! 

Nous avons écris pour vous cet article complet afin de vous aider à comprendre les enjeux, les fonctionnements et de transformer la négativité en positivité !  

Nous vous aiderons à éviter que WordPress cron ait un impact négatif sur votre site web. Pour ce faire, nous vous aiderons à comprendre ce qu’est un cron WordPress et comment ce système fonctionne pour l’automatisation des tâches.

Qu’est-ce qu’une tâche Cron WordPress ?

WordPress inclut son propre système cron distinct, qui permet de planifier les tâches. Celles-ci incluent notamment la vérification des mises à jour, la planification d’un post pour publication et la suppression de commentaires de la corbeille. 

En fait, toutes les tâches répétitives ou qui doivent être effectuées à des fréquences régulières connues peuvent être gérées par WP-Cron. Le cron de WordPress fonctionne partiellement comme le cron classique (de UNIX), du moins au niveau des objectifs et des tâches exécutables. 

La planification des tâches du cron WordPress est toutefois fondamentalement différente. Elle utilise des intervalles d’exécution plutôt qu’un calendrier complet. Les tâches s’exécutent par exemple sur une base quotidienne ou horaire, plutôt qu’à un moment précis.

Le cron classique vous permet ainsi de planifiée l’exécution d’une même tâche à des heures différentes pour chaque jour de la semaine. Le cron WordPress vous permet de déterminer le moment de la première exécution et sa fréquence de répétition. Si la tâche est quotidienne, elle s’exécutera donc toujours à la même heure.

Comme vous pouvez vous en doutez, ce mode de planification n’est pas toujours très fiable. Les tâches peuvent s’exécuter à des moment où plusieurs visiteurs sont sur votre site. Elles peuvent aussi s’exécuter inutilement, à des moment où elles ne sont pas nécessaires.

Avantages de l’utilisation de WordPress Cron

Si vous voulez automatiser un processus de site web ou que vous avez besoin de vérifier, analyser et contrôler régulièrement votre site web, les tâches cron sont très utiles. Par exemple, vous pourriez vouloir faire un ping d’un serveur une fois par jour, vérifier l’état d’un système toutes les heures, etc.

WP Cron permet au noyau WordPress et aux autres plugins d’effectuer facilement des tâches selon un calendrier précis. Il est relativement facile de configurer une taĉhe cron WordPress au lieu d’utiliser un cron traditionnel, qui nécessite une connaissance des commandes Linux.

De plus, WP-Cron utilise des intervalles pour planifier les tâches. Vous pouvez donc être assuré que votre tâche sera exécutée même si le temps prévu expire. Au contraire de WP cron, un cron Unix qui spécifie l’heure exacte à laquelle une tâche doit s’exécuter. 

Si le moment de l’exécution passe sans que la tâche ne s’exécute, elle ne sera pas effectuée à nouveau à moins que vous la programmiez manuellement à nouveau.

Comment utiliser le gestionnaire de tâches cron de WordPress

Même si WordPress inclut son propre gestionnaire pour les tâches Cron, il n’est pas accessible par défaut sur le CMS. Il est donc nécessaire d’installer un plugin pour y accéder et l’utiliser.

Il existe une multitude de plugins à cet effet dans le répertoire officiel de WordPress.org. Ceux-ci varient grandement dans leurs fonctionnements, les options auxquelles ils donnent accès, et même leurs prix. 

Il est donc important de porter attention au plugin que vous choisissez, afin de vous assurer d’optimiser la gestion de vos tâches cron. 

Choisir un plugin de tâches cron pour WordPress

Comme vous le savez sans doute déjà, il existe une incroyable variété de plugins pour WordPress. Il y en a plus de 59 000 de disponibles sur le répertoire officiel de WordPress.org, sans compter tous les autres répertoires. On peut notamment penser à CodeCanyon, qui en compte plus de 5200.

Parmi ces milliers de plugins, on compte une variété d’outils spécialisés dans la gestion des tâches cron. On retrouve notamment FastCron, EasyCron, WP-Cron Status Checker et Advanced Cron Manager. Le plugin le plus populaire et le plus complet est toutefois WP Crontrol, qui a aussi le mérite d’être gratuit.

WP Crontrol compte plus de 300 000 installations actives, et se voit attribuer la note impressionnante de 4,5 étoiles sur 5 sur le répertoire officiel de WordPress. Ce plugin jouit donc d’une excellente réputation au sein de la communauté WordPress.

Comment utiliser le plugin Advanced Cron Manager

Plusieurs plugins de gestion cron pour WordPress sont disponibles en version gratuite et payante. C’est notamment le cas de Advanced Cron Manager.

La version gratuite de l’extension peut être téléchargée facilement depuis le répertoire officiel de WordPress.org. Une fois le plugin activé, une section Cron Manager est ajoutée au menu Outils du tableau de bord WordPress.

Options de gestion de Advanced Cron Manager dans le tableau de bord WordPressÀ partir de cette section, vous pouvez gérer les tâches cron de votre site WordPress. La version gratuite du plugin est toutefois assez limitée en termes de fonctionnalité.

Modifier une fréquence d’exécution avec Advanced Cron Manager

La fonction la plus utile pour une bonne gestion de vos tâches est le contrôle des fréquences d’exécution. Le plugin Advanced Cron Manager rend cette option possible en cliquant sur le lien Details, placé sous chacune des tâches.

Gestion des tâches Cron avec Advanced Cron Manager

Malheureusement, cette fonctionnalité n’est pas accessible dans le version gratuite du plugin. Il vous faudra débourser une quarantaine d’euros par an pour y accéder.

Message de Advanced Cron Manager concernant les limites du plugin gratuit

Vous pouvez toujours supprimer manuellement la plupart des tâches pour les recréer avec des fréquences différentes. C’est toutefois très long et fastidieux, et ce n’est pas possible pour toutes les tâches.

Créer une nouvelle tâche cron avec Advanced Cron Manager

La version gratuite de Advanced Cron Manager vous permet tout de même de créer vos propres tâches cron. Pour ce faire, il vous suffit de cliquer sur le bouton Add new event, en haut de la fenêtre du plugin.

Ajouter un nouvel événement avec le plugin Advanced Cron Manager

Une fenêtre intitulée New event apparaîtra alors à la droite de votre écran. Vous devez alors entrer le nom de votre tâche dans le champ Hook. Sélectionnez ensuite le moment de la première exécution et la fréquence de répétition.

Si vous le souhaitez, vous pouvez également ajouter un argument en cliquant sur le bouton à cet effet. Une fois que vous avez configuré les paramètres désirés, cliquez sur le bouton Schedule event

Configuration d'un événement cron avec Advanced Cron Manager

La tâche sera alors ajoutée à la liste d’événements de votre site WordPress.

Créer une nouvelle fréquence d’exécution avec Advanced Cron Manager

La version gratuite du plugin vous permet aussi de créer des fréquences d’exécution personnalisées pour vos tâches. 

Notez cependant que ces fréquences ne s’appliquent que pour les tâches que vous créez, puisque le plugin ne permet pas de modifications. Elles ont donc un usage très limité.

Pour créer une nouvelle fréquence personnalisée, cliquez sur le bouton Add new schedule au haut de la fenêtre de gestion des tâches cron. 

Ajouter un nouvel événement avec le plugin Advanced Cron Manager

Une fenêtre intitulée New schedule apparaîtra alors à la droite de votre écran. Vous devez alors définir son nom affiché et le “slug” cron qui y  sera est associé. Vous pouvez ensuite définir la durée de l’interval entre les exécution à l’aide des champs à cet effet.

Une fois que vous avez rempli tous les champs, cliquez sur le bouton Add schedule au bas de la fenêtre.

Fenêtre de configuration de la fréquence de répétition d'un événement

La nouvelle fréquence d’exécution sera alors disponible pour les nouvelles tâches que vous ajouterez. 

Comment utiliser le plugin WP Crontrol

WP Crontrol présente plusieurs avantages notables, qui nous poussent à le recommander sans hésitation. Il est complet, efficace, simple à utiliser, et surtout, totalement gratuit!

Bien entendu, d’autres plugins peuvent également convenir, voire mieux convenir à vos préférences personnelles. WP Crontrol est toutefois une référence reconnue pour la gestion cron WordPress, alors nous croyons important de vous le présenter.

WP Crontrol vous permet de contrôler les événements cron sur votre site WordPress. Depuis les écrans d’administration, vous pouvez :

  • Afficher tous les événements cron avec leurs arguments, calendrier, fonctions de rappel, et quand ils sont dus.
  • Modifier, supprimer, mettre en pause, reprendre et exécuter immédiatement les événements cron.
  • Ajouter de nouveaux événements cron.
  • Supprimer en masse les événements cron.
  • Ajouter et supprimer des calendriers cron personnalisés.
  • Exporter et télécharger les listes d’événements cron sous forme de fichier CSV.

Sans plus tarder, voyons brièvement comment utiliser ce plugin

Exemple de gestion sur WP Crontrol

Le plugin WP Crontrol est un outil spécifiquement conçu pour permettre la planification et la gestion de vos tâches Cron depuis votre tableau de bord WordPress. 

Il s’agit d’un plugin complet et de bonne qualité.Il ajoute une section Fréquences cron, au sein du menu de Réglages de votre tableau de bord, et une section Événements cron au menu Outils.

Comme nous l’avons déjà mentionné, son utilisation demande toutefois certaines précautions. Il est notamment important de prendre soin d’ajuster la fréquence d’exécution des différentes tâches.

À titre d’exemple, voici la liste de tâches cron par défaut un site WordPress doté seulement de quelques plugins populaires. Parmi ceux-ci, on retrouve Updraft, Elementor, LS Cache, WPForms, All in One SEO et Wordfence, combinés au populaire thème Astra. 

Exemple de liste de tâches d'un site WordPressSuite de la liste précédente

Comme vous pouvez le constater, même avec un nombre très limité de plugins, la liste de tâche est déjà très longue.Certaines d’entre elles sont programmées à chaque minute, aux dix minutes ou à chaque heure. Il est donc presque certain que certaines d’entre elles s’exécuteront simultanément, en plus de s’exécuter durant les heures de fort achalandage.

On peut facilement observer que certaines s’exécutent à des fréquences beaucoup trop élevées. Par exemple, les vérifications pour des mises à jour au niveau des thèmes et des plugins se font 2 fois par jour. On peut sans problème diminuer cette fréquence de moitié, sans risquer le moindre problème. 

Affichage de la fréquence de répétition des mises à jour

Il est donc essentiel de prendre le temps d’ajuster la fréquence de chacune des tâches afin de minimiser l’impact négatif de vos tâches cron.  

Modifier la fréquence d’exécution de tâches cron avec WP Crontrol

La fonctionnalité de WP Crontrol qui se révèle la plus essentielle est la modification facile des fréquence d’exécution des tâches cron. Il suffit de vous rendre dans la section Fréquences cron, au sein du menu de Réglages de votre tableau de bord.

Cliquez ensuite sur la tâche que vous désirez modifier dans la liste qui s’affiche. Vous verrez alors des options apparaître sous celle-ci. Pour changer la fréquence, cliquez sur le lien Modifier

Lien pour modifier la fréquence d'exécution

Vous accéderez alors à la fenêtre de gestion de la tâche cron. Vous pouvez alors fixer le moment de sa prochaine exécution, de même que la fréquence à laquelle elle se répète.

Fenêtre de configuration des paramètres d'une tâche cron sur WP Crontrol

Pour modifier la fréquence, il vous suffit de cliquer sur le champ à la droite de Schedule. Un menu déroulant vous présentera alors les différentes fréquences disponibles.

Menu déroulant affichant les fréquences d'exécution disponibles

Sélectionnez alors la fréquence désirée et cliquez sur le bouton Mettre à jour l’événement.

Bouton pour mettre à jour les paramètres d'un événement cron

La fréquence d’exécution de la tâche sera alors immédiatement ajustée selon votre choix.

Créer une nouvelle tâche cron avec le plugin WP Crontrol

En plus de modifier les tâches cron existantes, le plugin vous permet également d’en créer de nouvelles. Pour ce faire, il suffit de cliquer sur le bouton Add New Cron Event au haut de la fenêtre de gestion des événements.

Bouton pour ajouter un événement cron sur WP Crontrol

Vous serez alors redirigés vers la page de configuration de votre nouvelle tâche. Sur cette page, vous pouvez tout d’abord définir le type de tâche cron que vous désirez créer. Dans la vaste majorité des cas, vous devriez choisir Événement cron standard

Vous devez ensuite inclure un Nom du crochet pour la nouvelle tâche. Il est également possible d’ajouter un Argument dans le champ suivant si vous le désirez.

Vous pouvez ensuite déterminer le moment de la prochaine exécution de la tâche, ainsi que sa fréquence de répétition. Une fois que vous avez configuré les paramètres désirés, cliquez sur le bouton Ajouter un événement pour l’enregistrer. 

Fenêtre de configuration d'un événement sur WP Crontrol

L’événement sera alors ajouté à la liste de tâches cron de votre site WordPress.

Comment créer une fréquence d’exécution personnalisée sur WP Crontrol

WP Crontrol inclut par défaut une variété de fréquences pour l’exécution de vos tâches cron. Celles-ci n’incluent pas nécessairement toutes les options que vous pourriez désirer. 

Par exemple, le plugin ne propose pas d’exécuter les tâches seulement une fois tous les deux jours ou trois jours. Il permet toutefois de créer votre propre fréquence d’exécution personnalisée.

Vous pouvez facilement passer de la gestion des évènements cron à celle des fréquences en utilisant les onglets au haut de la fenêtre de WP Crontrol.

Onglet des fréquences cron du plugin WP Crontrol

En sélectionnant l’onglet Fréquences Cron, vous accéderez à la liste des options existantes. Vous verrez également une fenêtre permettant d’ajouter une fréquence. Celle-ci inclut trois champs de réponse pour configurer votre nouvelle option.

Fenêtre de configuration d'un fréquence d'exécution d'une tâche sur WP Crontrol

Le Nom interne est le terme utilisé pour l’exécution du délai dans le code de vos tâches cron. Le champ Afficher le nom est, pour sa part, le terme qui sera utilisé pour décrire cette option. 

Les intervalles doivent être définies en nombre de secondes. Une journée devient ainsi 86 400 secondes (60 secondes x 60 minutes x 24 heures). Il faut donc prendre en compte cet aspect lors du calcul de vos intervalles. 

Les bonnes pratiques entourant l’utilisation de tâches Cron

L’utilisation de tâches Cron peut présenter de nombreux avantages. Pour ce faire, elle doit toutefois respecter un certain nombre de règles visant à limiter l’utilisation des ressources du serveur.

Des tâches effectuées de manière trop fréquente peuvent causer de sérieux problèmes de performances. Il en va de même de tâches dupliquées, demander au serveur d’effectuer plusieurs fois une même tâche pour rien.

Afin de vous aider à optimiser votre utilisation des tâches Cron, voici quelques recommandations entourant leur usage.  

Vérifiez les processus existants avant de créer des tâches Cron

Avant de planifier la moindre tâche sur votre serveur, assurez-vous qu’une commande identique n’est pas déjà planifiée. 

Plusieurs des tâches pouvant être effectuées avec Cron sont souvent incluses dans les services des fournisseurs d’hébergement web. C’est notamment le cas des sauvegardes quotidiennes, ou des mises à jour automatiques. 

Il est aussi important de vous assurer de ne pas dupliquer les tâches Cron que vous programmez. Pour ce faire, il est recommandé de consulter les tâches déjà définies dans le cron de Python, avant d’ajouter des tâches dans celui de WordPress.

Par exemple, si votre hébergeur web effectue déjà des sauvegardes quotidiennes du contenu de votre site web, vous n’avez pas à programmer vos propres sauvegardes via WP-Cron. L’exécution de cette tâche redondante ne ferait alors qu’utiliser inutilement les ressources de votre serveur, sans vous apporter le moindre bénéfice.

Évitez les heures ou votre site web est achalandé

Internet dans son ensemble est actif 24 heures sur 24, tous les jours, sans la moindre période d’interruption. Malgré cette continuité apparente, l’achalandage de la majorité des sites web fluctue généralement beaucoup selon un cycle quotidien. La vaste majorité des sites sur le web n’attirent pas un trafic constant à toutes heures du jour et de la nuit. 

Leurs visiteurs sont généralement concentrés dans un certaine région géographique du globe. Cette réalité fait que le trafic qu’ils attirent se trouve également concentré sur certaines heures de la journée.

Il est donc recommandé de programmer les tâches Cron à des moments où le trafic web est le moins élevé. Pour la plupart des sites web, cela signifie de planifier les tâches au cours de la nuit, dans la région d’où provient la majorité des visiteurs.

Le respect de cette règle est d’autant plus important pour les tâches plus longues ou exigeantes en termes de ressource, ou pour celles pouvant causer des problèmes d’accessibilité.

Par exemple, la recherche automatique de mises à jour ne devrait jamais être exécutée en plein jour. Non seulement cette tâche peut s’avérer très longue, elle peut aussi engendrer des problèmes de compatibilité et rendre le site indisponible. 

Il est donc fortement recommandé de l’exécuter la nuit, pour minimiser son impact négatif potentiel. 

Assurez-vous que les tâches ne s’effectuent pas simultanément

Un serveur est généralement capable de gérer un certain nombre de tâches cron assez demandantes, si elle s’exécute une par une. C’est toutefois beaucoup plus difficile, voire impossible, de les exécuter toutes en même temps!

Il est donc essentiel de s’assurer de ne pas programmer l’exécution de plusieurs tâches au même moment. 

À ce niveau, le cron de WordPress se montre souvent plus problématique que le cron classique. Les tâches sont programmées selon un cycle, plutôt qu’à des moments précis. Il peut donc être complexe de s’assurer que les cycles différents des diverses tâches ne se “croisent” jamais.

Par exemple, certaines tâches hebdomadaires peuvent éventuellement être exécutées au même moment qu’une autre exécutée deux fois par jour. 

Les demandes de ressources au niveau du serveur peuvent alors dépasser les limites des ressources allouées par votre hébergement web. Par conséquent, votre site web peut alors être temporairement inaccessible.

Limitez la fréquence d’exécution de vos tâches 

Cron permet de programmer une grande variété de tâches différentes. Certaines commandes comme les mises à jour automatiques n’ont pas besoin d’être exécutées tous les jours.  

Il est donc important de définir des délais raisonnables entre les exécutions de vos différentes tâches Cron. Une exécution trop fréquente peut avoir un impact négatif majeur sur les performances de votre site web.

Pour éviter que vos tâches cron nuisent aux performances de votre site WordPress, il est donc essentiel de planifier un délai suffisant entre les exécutions de vos tâches cron.

Par exemple, il est totalement inutile de programmer une recherche de mises à jour à toutes les heures, ou même deux fois par jour. En règle générale, ce type de tâche peut très bien s’exécuter une seule fois par semaine, sans engendrer le moindre risque ou problème.

Il est important de se rappeler que même si elles peuvent apporter des bénéfices en matière de performances, les tâches cron exigent des ressources du serveur pour s’exécuter. On recommande donc généralement de limiter autant que possible la fréquence de leur exécution.

Utiliser la fréquence minimale “raisonnable”

Il n’est pas toujours évident de savoir quelle fréquence utiliser pour les différentes tâches cron que vous pourriez vouloir créer.

Plus une tâche est exécutée régulièrement, plus elle demande de ressources du serveur. Elle a également davantage de chances de s’effectuer au même moment qu’une autre tâche. Il est donc recommandé de restreindre autant que possible la fréquence à laquelle vos tâches s’exécutent. 

Si le “minimum raisonnable” vous semble être “une à deux fois par jour”, choisissez la fréquence la moins élevée. Dans ce cas, ce serait une fois par jour.

Pour conclure sur comment configurer et gérer vos tâches Cron pour WordPress

Une bonne gestion des tâches Cron est essentielle au succès de votre site WordPress. Cela permet de concentrer les tâches de maintenance à des moments auxquels votre site est moins achalandé. Vous pouvez ainsi minimiser les risques qu’un visiteur trouve votre site indisponible.

Les tâches cron peuvent poser de nombreux problèmes, si vous ne leur accordez pas l’attention nécessaire. Elles peuvent s’exécuter trop souvent, y compris à des moments où le trafic est élevé sur votre site. 

Votre site web peut alors demander plus de ressources du serveur que celles auxquelles vous avez accès dans votre plan d’hébergement. Les visiteurs peuvent alors être incapables d’accéder à votre site, et rencontrer des messages d’erreur. 

Nous espérons que cet article vous a plu et vous a aidé à configurer et gérer les tâches cron de votre site WordPress. Si c’est le cas, nous vous invitons à jeter un œil à nos autres articles et tutoriels. Vous pouvez aussi consulter nos critiques d’hébergeurs web, afin de connaître les meilleurs services sur le marché.