Le mot CRON peut faire un peu peur quand on ne connaît pas beaucoup l’univers WordPress. Ou le doux et petit monde des sites web. Pourtant, le Cron n’est pas une bête méchante. Il s’agit d’un élément technique qui permet au contraire à un site web de fonctionner de manière fluide et autonome. Le cron peut d’ailleurs être utilisé sur WordPress ou via son hébergeur web !
Aussi découvrons ce qu’est le Cron WordPress et les tâches qu’il contient 🙂 Parce que oui, le Cron est en réalité très simple si on le regarde avec recul 🙂
Sommaire
- Le Cron WordPress c’est quoi ?
- Comment agir sur le Cron WordPress ?
- Supprimer des tâches dans le cron WordPress
- Exemple de suppression d’un événement du Cron WordPress
- Importance du rôle du Cron sur WordPress
- Pourquoi il faut entretenir le CRON WordPress ?
- Le Cron chez des hébergeurs web
- Le Cron chez ovhcloud – offre mutualisée
Le Cron WordPress c’est quoi ?
On peut souvent lire que le Cron est un système qui permet de planifier des tâches sur un site WordPress. Mais en réalité, pour côtoyer des utilisateurs/utilisatrices WordPress presque tous les jours, la plupart ne planifient jamais de tâches dans le Cron. En effet, une majorité de personnes qui ont un site web WordPress ignorent tout bonnement qu’il existe un Cron et donc ne savent pas à quoi il sert ! 🙂
Aussi, il est plus juste d’indiquer que le Cron est une petite partie du moteur d’un site WordPress. Dans lequel on peut découvrir des tâches planifiées qui doivent en toute logique s’exécuter à une fréquence prédéfinie. Ces tâches sont le plus souvent créées :
- Par WordPress lui-même pour permettre de garder le système sain et fluide
- Par des extensions installées et utilisées
Notons qu’on peut parler de tâches ou bien d’événements. Il s’agit en l’occurrence de la même chose 🙂
Exemples de tâches dans le Cron WordPress
Tâches cron de WordPress
Prenons l’exemple via cette capture d’écran, de 3 tâches présentes dans le cron d’un site WordPress et pour lequel les tâches sont assez facilement compréhensibles :
Voici à quoi servent ces 3 tâches :
- wp_version_cherck : cette tâche va servir à vérifier la version de WordPress. Si la version n’est pas la dernière, cela sera affiché sur le tableau de bord.
- wp_update_plugins : cette tâche sert à vérifier les mises à jour de plugins
- wp-update_themes : cette tâche sert à vérifier les MAJ du ou des thèmes installés
Dans la seconde colonne, on peut voir qu’elles doivent s’opérer le 8 janvier vers 15h58. La 3ème colonne correspond à l’action de la tâche. Aussi, on peut voir, s’il s’agit par exemple de tâche qui visent :
- à simplement vérifier un état (comme la version d’un WP)
- à agir : à supprimer des articles brouillons etc…
Tâches Cron relatives à des plugins WP
Certaines tâches ne seront présentes dans un cron WP que si certaines extensions sont installées et activées. Prenons l’exemple ici de tâches Cron créées par le plugin WP de sécurité Sucuri qui doit donc lancer un scan :
Si je n’installe pas ce plugin, je n’aurai donc pas cette tâche dans le CRON de ce blog WordPress. Cette tâche est là dans le Cron car le plugin Sucuri est installé + activé sur ce site WP. Je n’ai pas agi pour qu’elle soit présente. Le plugin a fait le nécessaire pour que cette tâche (et d’autres potentielles tâches) soit dans le cron. Cette tâche doit déclencher un scan automatique de Sucuri sur le site pour tenter d’en garantir une partie de la sécurité.
Tâches cron laissées par des plugins WP désinstallés et désactivés
Dans un monde parfait, quand on désactive et qu’on retire complètement un plugin WP, c’est à dire qu’on désactiver complètement cette extension WP, tout devrait disparaître avec. Les tâches Cron aussi. Hélas, des plugins même quand ils sont totalement désactivés donc retirés d’un site WP, laissent des tâches dans le cron (comme certains laissent des options dans la base de données…). Voici l’exemple du plugin updraft qui sert à faire des sauvegardes de site WP :
Sur le site web WP concerné, ce plugin Updraft est complètement désactivé et supprimé. Pourtant, il reste bien des miettes du plugin 🙁 On peut voir ci-dessus une tâche dans le Cron qui consiste à nettoyer les fichiers temporaires mais on voit aussi qu’elle ne déclenchera aucune action (colonne 3).
En complément de cet article, découvrez une liste de plugins WP et thèmes WP qui laissent des tâches dans le Cron alors qu’ils sont désinstallés.
Aussi, il est possible de supprimer cette tâche du Cron, ce que nous verrons ultérieurement. Si je la laisse, il ne se passera rien. Mais à quoi bon la laisser ? Réponse bientôt 😉
Bref, vous l’aurez donc compris, le Cron WordPress c’est un peu comme une liste de tâches qui doivent s’exécuter. Pour des très bonnes raisons comme :
- Vérifier différents statuts dans WordPress : version de WordPress, version de thèmes, version de plugins…
- Déclencher des actions en toute autonomie : retirer des fichiers temporaires, supprimer des fichiers de données personnelles pour respecter le RGPD…
Le Cron est donc finalement très simple ! Et surtout, il ne vous vaut aucun mal 😉
Comment agir sur le Cron WordPress ?
Comme indiqué plus haut dans cet article, dans 80% des cas, la plupart des personnes qui utilisent WordPress ignorent qu’il existe un Cron. Et ces personnes ne l’utilisent donc pas. Aussi, comment agir sur le con quand on ne sait pas que ça existe ou ce que c’est ?
Il convient d’abord de découvrir ce que c’est et nous l’avons vu précédemment :
Le cron est un journal qui contient des tâches qui s’exécutent pour le bien du site web WordPress.
Une majorité du temps, vous n’avez pas à agir sur le Cron WordPress, même si vous le connaissez. Mais si vous souhaitez aller plus loin et aller le parcourir et éventuellement agir pour :
- Voir quelles tâches il y a dans le Cron de votre WordPress
- Modifier des tâches dans le Cron WP
- Supprimer des tâches dans le Cron WP
Vous pouvez installer un plugin WordPress qui permet de parcourir le Cron WP et agir sur les tâches du Cron WordPress.
Dans mon cas, j’utilise l’extension WordPress WP Crontrol. Il est gratuit et va à l’essentiel. Bien entendu il en existe d’autres qui sont gratuits et aussi bien. Ce plugin que j’utilise est celui qui a permis de faire les captures d’écran qui sont présentes dans cet article.
Supprimer des tâches dans le cron WordPress
Agir manuellement sur le Cron WordPress consiste donc principalement à modifier et/ou à supprimer des tâches du cron.
Dans les modifications, on aura surtout :
- des changements de fréquence d’exécution de tâches
- de mettre en pause temporairement des événements (tâches)
- de changer l’argument d’action de la tâche
Dans la suppression, il suffira simplement de supprimer une tâche dont on ne veut plus. Et là, il faut bien entendu savoir ce qu’on fait. On évitera absolument par exemple de supprimer une tâche du coeur de WordPress. Car si ces tâches sont là de manière native, c’est pour de très bonnes raisons 😉
Exemple de suppression d’un événement du Cron WordPress
Prenons le cas de cette fameuse tâche du plugin updraft qui est encore là alors que le plugin est désinstallé… En fait il y en a deux :
On voit dans la 3ème colonne qu’il n’y a plus aucune action pour ces deux tâches qui végètent donc dans le cron comme dans du formol… Aussi, puisque je suis sûre de moi, que le plugin n’est plus là, je vais supprimer ces deux événements. Avec WP Crontrol, il me suffit de survoler le nom de la tâche et de cliquer sur le lien « delete« . La suppression est immédiate.
Importance du rôle du Cron sur WordPress
Grâce aux tâches du cron WP qu’on appelle aussi événements, vous êtes soulagé(e)s et dispensé(e)s d’effectuer manuellement diverses actes sur votre site web. Ces tâches sont pour beaucoup automatiquement créées nativement dans WP à l’installation. Tandis que d’autres tâches sont créées quand vous activez certains plugins WP et les configurez. C’est donc transparent pour vous.
Mais !
C’est donc un petit moteur qui tourne sans que vous vous en rendiez compte. Avec un rôle important comme vérifier les mises à jour diverses du site web WP (thème, version de WP, plugins…) etc… Lancement de scan quotidien ou hebdo d’un plugin de sécurité… Il convient donc de comprendre que le CRON n’est pas là pour faire joli. Ce n’est pas superficiel. Au contraire, c’est important !
Pourquoi il faut entretenir le CRON WordPress ?
Imaginez un vieux site WordPress qui a 10 ans. Tout a pourtant été fait pour qu’il reste clean et à jour. Mais quid du Cron ? Il faudra bien entendu aller voir ce qui est agendé dans le cron et potentiellement faire de l’entretien :
- En cherchant des anciennes tâches sans actions et pourquoi pas les supprimer
- En décalant ou reprogrammant à des fréquences moindres des tâches non essentielles de plugins…
Sur certains sites web WP, le cron natif est désactivé. Au profit du cron de l’hébergeur qui est parfois plus facile à manipuler car l’interface est + user friendly.
Le Cron chez des hébergeurs web
Interface CRON chez o2switch
Si vous préférez gérer votre Cron chez l’hébergeur plutôt que sur WordPress et que votre hébergeur web est o2switch, vous trouverez l’interface du CRON dans le bloc Avancé de votre espace technique CPANEL, comme suit dans le screenshot :
Une fois dans la partie dédiée au Cron de o2switch, vous pourrez créez des tâches Cron ou gérées celles potentiellement déjà présentes. Dans mon cas, je n’y ai jamais touché directement. Mais comme j’ai activé le cache Objet Redis proposé chez cet hébergeur web, une tâche y a été créée automatiquement et on peut la voir en exemple ici :
Dans la capture on peut voir qu’il pourrait y avoir des fréquences avec jour, heure et minutes… Les tâches du cron sont généralement préprogrammées et programmables. Afin qu’elles puissent s’actionner à des moments précis et fréquences définies.
Le Cron chez ovhcloud – offre mutualisée
Chez ovhCloud, si vous êtes en offre mutualisée d’hébergement web avec par exemple la célèbre et historique offre « Perso » ou en offre « performance« , vous trouverez la partie dédiée au Cron quand vous irez sur votre service « Hébergement ». Ensuite rendez-vous dans les onglets et cliquez sur la flèche à droite car l’option est cachée dans le menu déroulant sur le côté :
L’interface chez OVH est simplifiée et facile à prendre en main. Encore faut-il connaître les lignes de commandes pour agender des tâches ! Je vous l’accorde 😉
Vous souhaitez aller plus loin avec le Cron qui finalement ne vous fait plus si peur maintenant que vous savez en quoi il consiste ? Restez dans le secteur, d’autres articles arriveront très bientôt !