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

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

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 ?

Ton site WordPress a des tâches de maintenance automatisées qu'il doit effectuer régulièrement. Dans cet article, nous allons voir ce que sont ces tâches, quels problèmes elles peuvent causer et comment Raidboxes te permet de les gérer super 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.

"*" indique les champs requis

Je souhaite m'abonner à la newsletter pour être informé des nouveaux articles de blog, des ebooks, des fonctionnalités et des nouvelles de WordPress. Je peux retirer mon consentement à tout moment. Merci de prendre connaissance de notre politique de confidentialité.
Ce champ sert à la validation et ne doit pas être modifié.

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 - comme Ubuntu, Debian ou même Mac OSX - et aussi sur les serveurs. Sous Windows, cette fonctionnalité s'appelle "Task Scheduler".

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. 

Windows Cron

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 . 

Wp Cron Location

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.

Qu'est-ce qui cause le 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.

Configurer l'exécution côté serveur de wp-cron.php sur Raidboxes

Pour te faciliter la tâche au maximum, l'équipe de Raidboxes a intégré cette fonction directement dans le Tableau de bord RB. Tu as littéralement besoin de cinq clics pour configurer l'exécution des tâches cron côté serveur de WordPress ! Si tu veux gagner du temps en tant que développeur, c'est l'un des réglages les plus faciles à réaliser.

Pour activer les Cron jobs côté serveur dans ton Tableau de bord Raidboxes, va d'abord dans les paramètres de ton Box et clique ensuite sur "Cron jobs" dans la sidebar.

raidboxes Tableau de bord wp-cron

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

Emplois Cron Raidboxes


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 adaptation, il n'est donc pas nécessaire de contacter ton hébergeur, d'aller dans le cPanel ou de modifier manuellement ton fichier wp-cron.php. Chez Raidboxes, tu n'as besoin que de quelques clics et tu peux surveiller et gérer tes tâches cron directement dans le Tableau de bord RB. Tu n'as donc pas besoin d'installer un plugin supplémentaire pour afficher tes tâches Cron.

Si tu veux faire d'autres configurations, tu peux également définir dans le Tableau de bord Raidboxes à quel intervalle le wp-cron.php doit être exécuté.

Temps de cron

Il y a beaucoup de spéculations sur le "meilleur" intervalle pour tes cronjobs. En règle générale, nous recommandons de ne pas descendre en dessous de 5 minutes. 

Editez vos cronjobs WordPress

Sans Plugins

Si tu ne veux pas installer de plugin pour modifier ton fichier wp-cron.php, ce n'est pas un problème ! Chez Raidboxes, tu peux facilement gérer tes tâches cron comme décrit ci-dessus via le Tableau de bord RB. Bien sûr, tu peux aussi accéder à tes cronjobs via une connexion SSH. Une fois que tu t'es connecté à ton compte, tu peux éditer wp-cron.php à la racine de ton 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. 

Plugin Wp Control

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 pour 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 tes Cron jobs WP aussi simple et pratique que possible via le Tableau de bord Raidboxes. Tu peux ainsi optimiser encore plus le développement et la gestion de ton site grâce à cet accès rapide et direct.

Tu as d'autres questions sur WP-Cron ou sur notre tableau de bord ? N'hésite pas à nous laisser un commentaire ! Tu souhaites être informé des nouveaux postes sur WordPress ? Alors suis-nous sur Twitter, Facebook ou via notre newsletter.

As-tu aimé cet article ?

Tes évaluations nous permettent d'améliorer encore plus notre contenu.

Un commentaire sur "Qu'est-ce que WP-Cron et quand les "vraies" tâches cron sont-elles utiles pour ton site WordPress ?"

  1. Ist der Eintrag DISABLE_WP_CRON tatsächlich – wie im Artikel beschrieben – in der wp-cron.php einzufügen? Ich hätte einen solchen define-Eintrag eher in der wp-config.php vermutet.
    Viele Grüße Stefan

Laisse un commentaire

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