Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress ?

7 Min.

Programmer la publication de messages sur WordPress , vérifier les mises à jour sur Plugins , créer des sauvegardes - ce sont tous des exemples typiques de tâches qui se répètent. Et c'est là que WP-Cron entre en jeu dans WordPress . Nous expliquons dans ce billet ce que cela signifie et quand les emplois de cron côté serveur ont plus de sens.

Comme vous le savez, votre ordinateur effectue, de manière constante et à une vitesse fulgurante, d'innombrables calculs avec des uns et des zéros, qui ont tous une tâche à accomplir. Nombre d'entre elles sont des tâches qui doivent être répétées. Encore et encore - comme se brosser les dents. J'ai donc la question suivante à vous poser :

Si vous pouviez automatiser le brossage de vos dents, le feriez-vous ?

Votre site WordPress comporte des tâches de maintenance automatisée qu'il doit effectuer régulièrement. Dans cet article, nous verrons en quoi consistent ces tâches, quels problèmes elles peuvent causer et comment RAIDBOXES vous permet de les gérer très facilement.

Chaque fois que votre machine locale vous envoie un message popup vous informant qu'une mise à jour a été trouvée ou qu'un e-mail est arrivé dans votre boîte de réception, il s'agit presque certainement d'un travail d'équipe en coulisses.

Qu'est-ce que Cron ? 

Cron est une commande de planification des tâches qui est intégrée dans les systèmes basés sur Linux - tels que Ubuntu, Debian ou même Mac OSX - et aussi sur les serveurs. Sous Windows, cette fonctionnalité est appelée "Planificateur de tâches".

La documentation sur l'utilisation de la fonction cron dans ces systèmes peut être trouvée ici : 

Que fait Cron de toute façon ?

Le but du cron est d'effectuer des tâches répétitives - par exemple, vérifier les mises à jour disponibles ou envoyer et recevoir des courriels. Il est généralement configuré pour vous par défaut. Mais plus vous avez installé de logiciels sur votre machine, plus il est probable que des emplois seront ajoutés. Par exemple, la capture d'écran ci-dessous montre un cronjob dans Task Scheduler sous Windows 10. 

Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress  ?

Vous vous demandez comment cela fonctionne ? Cron fonctionne en programmant les tâches en fonction de l'heure de votre appareil et peut être configuré par minute, heure, jour, semaine, mois et année. Dans Cron, vous fixez un délai précis pour l'exécution d'une action. 

Qu'est-ce que WP-Cron ?

WordPress Cron, également connu sous le nom de WP-Cron, est un fichier PHP qui se trouve généralement dans le répertoire racine de votre installation WordPress . 

Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress  ?

Et que fait le WP-Cron ?

Le fichier WordPress cron (wp-cron.php) contient les tâches automatisées que votre installation WordPress doit effectuer. Par exemple, des choses comme la vérification des mises à jour de Plugins et WordPress ou la publication de messages programmés. Pour plus d'informations, voir la documentation"Qu'est-ce que WP-Cron" dans le manuel officiel WordPress Plugin . 

WP-Cron contre Cron

La principale différence entre WordPress cron et le planificateur cron est que wp-cron.php n'est exécuté que lorsqu'un utilisateur visite votre site web et déclenche un chargement de page. Cela signifie que WordPress nécessite une requête HTTP/HTTPS de votre site web pour exécuter les tâches programmées. La tâche principale est alors mise en file d'attente pour être exécutée. 

Vous vous demandez peut-être, et à juste titre :

Pourquoi WP Cron ne fonctionne-t-il que lorsqu'un utilisateur visite mon site ! 

Eh bien, de nombreux hébergeurs WordPress ne proposent qu'un hébergement mutualisé, ce qui signifie généralement que l'hébergeur ne vous donne pas accès à la commande cron. Parce que si c'était le cas, vous auriez accès aux commandes du serveur et toutes les données sur le serveur seraient potentiellement compromises. C'est pourquoi WordPress Cron est la solution à ce problème.

La deuxième différence est que lorsque vous utilisez Cron, vous pouvez définir des horaires spécifiques (par exemple, 17h00 par jour pour exécuter une tâche). Dans WP-Cron, en revanche, vous définissez des intervalles (par exemple, 14:00 et l'intervalle X après). WP-Cron exécute ensuite la tâche à ces intervalles tant qu'un utilisateur a visité le site. Pour plus d'informations, voir aussi : Comprendre l'ordonnancement du WP-Cron

WP-Cron et performance

Étant donné que WP-Cron est déclenché chaque fois qu'un utilisateur visite votre site web, cela peut poser des problèmes pour les petits comme pour les grands sites web. Je vais vous expliquer pourquoi maintenant.

Sites web de petite taille et géographiquement spécifiques

Pour les petits sites web à faible trafic, le problème est que la tâche de cron ne se déroule pas assez souvent. Exemple : Et si votre site web est censé faire une sauvegarde à 2 heures du matin, mais que vous avez un petit site de guides de voyage qui ne fonctionne que dans une seule ville. Dans ce cas, il est peu probable que votre public cible visite votre site à 2 heures du matin et déclenche le "cronjob". Et si c'est la basse saison, vous risquez de ne pas avoir de visiteurs sur votre site pendant plusieurs jours. 

Sites web plus importants et portée mondiale

Cependant, pour les sites ayant un grand nombre d'utilisateurs, WP-Cron peut causer certains problèmes de performance et même rendre votre site vulnérable à une attaque DDoS. Maintenant, si vous avez probablement paniqué et pris votre souris ou votre tasse de café à la mention d'une attaque DDoS : ne vous inquiétez pas trop, car il y a une solution pour tout.

Quelle est la cause du problème ?

C'est le volume du trafic qui pose problème. Pour les grands sites web, le trafic est bien sûr indispensable et important pour les entreprises, aussi la limitation des appels n'est-elle pas une solution au problème. 

N'oubliez pas que chaque visite de page entraîne le déclenchement de WP-Cron - et bien sûr, cela met votre serveur à rude épreuve car il nécessite des ressources.

Y a-t-il une meilleure solution ?

Heureusement, la réponse est "oui". Bien que nous ne puissions pas facilement réduire la circulation, ouvrir des magasins physiques dans le monde entier ou changer la façon dont WordPress est construit. Mais nous pouvons changer ce qui fait fonctionner le WP-Cron. 

Au lieu de lancer wp-cron.php en fonction des visites de pages, nous pouvons mettre en place une tâche cron sur le serveur d'hébergement qui lance WP-Cron à des intervalles spécifiques. Je vais vous montrer comment faire.

Configurez l'exécution côté serveur de wp-cron.php à l'adresse RAIDBOXES

Pour vous faciliter la tâche, l'équipe de RAIDBOXES a intégré cette fonctionnalité dans le tableau de bord du RB. Il faut littéralement cinq clics pour mettre en place l'exécution côté serveur des cronjobs WordPress ! Si vous êtes un développeur cherchant à gagner du temps, c'est l'une des mises au point les plus faciles à réaliser.

Pour activer les cronjobs côté serveur dans votre tableau de bord RAIDBOXES , allez d'abord dans vos paramètres BOX et cliquez ensuite sur "Cronjobs" dans la barre latérale. 

Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress  ?

Vous allez maintenant voir tous les paramètres de vos cronjobs. 

Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress  ?


Vous devez maintenant configurer les éléments suivants dans les cronjobs :

  1. Désactivez "Run WP-Cron" (cela empêche le déclenchement de WP-Cron par les visiteurs du site web).
  2. Activez "Run WP-Cron server-side" (cela ajoute une tâche cron au serveur pour déclencher wp-cron.php à l'intervalle que vous spécifiez). 

C'est tout ce qu'il y a à faire !

A l'attention de

Si vous désactivez Run WP-Cron et que l'option Run WP-Cron côté serveur est également désactivée, plus aucun cron job ne sera exécuté sur votre site.

Pour cette personnalisation, il n'est donc pas nécessaire de contacter votre hébergeur, d'aller dans le cPanel ou de modifier manuellement votre fichier wp-cron.php. Sur RAIDBOXES , vous n'avez besoin que de quelques clics et vous pouvez surveiller et gérer vos cronjobs directement dans le tableau de bord du RB. Vous n'avez donc pas besoin d'installer un Plugin supplémentaire pour visualiser vos cronjobs.

Si vous souhaitez effectuer d'autres configurations, vous pouvez également définir l'intervalle auquel wp-cron.php doit être exécuté dans le tableau de bord de RAIDBOXES .

Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress  ?

Il y a beaucoup de spéculations sur le "meilleur" intervalle de temps pour vos petits boulots. Nous recommandons généralement de ne pas descendre en dessous de 5 minutes. 

Editez vos cronjobs WordPress

Sans Plugins

Si vous ne voulez pas installer Plugin pour modifier votre fichier wp-cron.php, pas de problème ! Sur RAIDBOXES , vous pouvez facilement gérer vos cronjobs via le tableau de bord RB comme décrit ci-dessus. Bien entendu, vous pouvez également accéder à vos cronjobs via une connexion SSH. Une fois connecté à votre compte, vous pouvez éditer wp-cron.php dans le répertoire racine de votre site WordPress .

Si vous voulez savoir comment rendre votre flux de travail encore plus efficace avec les sciences humaines, il est préférable de consulter notre article"The Perfect WordPress Development Workflow with Git & SSH"

Avec Plugins

Actuellement, le site Plugin le plus populaire pour la gestion des cronjobs WP est"WP Crontrol". Vous pouvez également rechercher et installer le Plugin directement dans votre WordPress à l'adresse Plugins et l'installer. 

Qu'est-ce que WP-Cron et quand les "vrais" cronjobs sont-ils utiles pour votre site WordPress  ?

Sur la page Plugin du WP Crontrol à l'adresse WordPress .org vous trouverez également une documentation utile sur la manière d'utiliser correctement Plugin

Configurer manuellement le serveur pour déclencher WP-Cron (pas nécessaire avec RAIDBOXES)

Avec un petit effort de configuration, vous pouvez également configurer votre serveur lui-même pour qu'il exécute wp-cron.php à des intervalles spécifiques.

  1. Modifier le wp-cron.php 

Dans wp-cron.php

  • Désactivez votre fichier wp-cron.php en ajoutant le code suivant au fichier :
define('DISABLE_WP_CRON', 'true');

Après cela, wp-cron.php ne sera plus déclenché lorsqu'un utilisateur visitera votre site web.

  1. Ajouter un cronjob à votre serveur

Dans votre environnement de serveur

En fonction de votre environnement d'hébergement, l'une des deux options ci-dessous peut s'appliquer à votre situation spécifique : 

  • Si vous utilisez un service d'hébergement partagé WordPress , contactez votre fournisseur d'hébergement et demandez-lui d'ajouter un déclencheur cron côté serveur pour wp-cron.php si vous n'avez pas accès aux commandes Linux vous-même.
  • Ou, si vous utilisez cPanel sur votre site et avez accès à votre ligne de commande, consultez la documentation appropriée de cPanel

Le fichier WP cron est facilement négligé lors de la construction d'un site web WordPress , mais peut conduire à des erreurs notables si votre site gagne un volume de trafic décent.

WordPress Préparez-vous aux pics de trafic

Vous attendez beaucoup de trafic sur votre site WordPress , par exemple en raison d'une campagne de marketing ? Alors, il vous faut une bonne préparation ! Notre responsable du développement, Matthias, vous montre les 13 mesures que vous pouvez prendre pour préparer votre WordPress à des charges élevées.

Conclusion

J'espère que cet article vous aidera à comprendre ce qu'est la fonction cron de WordPress et comment elle fonctionne. Utilisé correctement, il peut vous aider à automatiser de manière fiable les tâches importantes afin que vous puissiez vous concentrer sur ce qui est important.

Notre objectif est de rendre la gestion de vos cronjobs WP aussi facile et pratique que possible via le tableau de bord RAIDBOXES . Vous pouvez ainsi optimiser davantage le développement et la gestion de votre site grâce à cet accès rapide et direct.

Vous avez d'autres questions sur WP-Cron ou sur notre tableau de bord ? N'hésitez pas à nous laisser un commentaire ! Vous voulez être informé des nouveaux postes sur WordPress ? Alors suivez-nous sur Twitter, Facebook ou via notre newsletter.

En tant que développeur web sur RAIDBOXES , Marten travaille sans cesse sur de nouvelles fonctionnalités pour nos clients. Sur "wp unboxed", il marque également des points grâce à ses connaissances en matière de développement web, WordPress et notre tableau de bord. Et pendant son temps libre, il aime aussi s'occuper de l'auto-hébergement et des dernières tendances sur Internet.

Articles connexes

Commentaires sur cet article

Laisse un commentaire

Ton adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués d'un *.