WP cron vs. Cron - Comment gérer vos tâches cron WordPress

20 octobre 2020

Planifier la publication d'articles sur WordPress, vérifier les plugins pour les mises à jour, créer des sauvegardes - ce sont tous des exemples typiques de tâches qui se déroulent à plusieurs reprises. Et c'est là que WP-Cron entre en jeu dans WordPress. Dans cet article, nous expliquons ce que cela signifie et quand les tâches cron côté serveur ont plus de sens.

Comme vous le savez, votre ordinateur effectue en permanence d'innombrables calculs avec des uns et des zéros, qui ont tous une tâche à faire, à une vitesse vertigineuse. Beaucoup de ces tâches doivent être répétées. Encore et encore - comme se brosser les dents. C'est pourquoi j'ai la question suivante pour vous:

Si vous pouviez automatiser le brossage des dents, le feriez-vous?

Votre site Web WordPress a des tâches de maintenance automatisées qu'il doit effectuer régulièrement. Dans cet article, nous allons voir quelles sont ces tâches, quels problèmes elles peuvent causer et comment RAIDBOXES les rend super faciles à gérer.

Chaque fois que votre ordinateur local vous affiche un message contextuel indiquant 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 très probablement d'une tâche cron qui fonctionne en coulisse.

Qu'est-ce que cron

Cron est une commande de planification de tâches intégrée dans les systèmes Linux - tels que Ubuntu, Debian ou Mac OSX - et également sur les serveurs. Sous Windows, la fonctionnalité s'appelle «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 de cron est d'effectuer des tâches répétitives - par exemple, vérifier les mises à jour ou envoyer et recevoir des e-mails. Ceci est généralement configuré pour vous par défaut. Mais plus vous avez installé de logiciels sur votre machine, plus de travaux seront probablement ajoutés. La capture d'écran ci-dessous montre une tâche cron dans le planificateur de tâches de Windows 10, par exemple.

Qu'est-ce que WP-Cron et quand les «vrais» travaux cron ont-ils un sens pour votre site Web WordPress?

Vous vous demandez comment cela fonctionne? Cron fonctionne en planifiant des 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 définissez une certaine heure à laquelle une action doit être effectuée.

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» travaux cron ont-ils un sens pour votre site Web WordPress?

Et que fait WP-Cron?

Le fichier cron WordPress (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 des plugins et de WordPress, ou la publication d'articles programmés. Pour plus d'informations, consultez la documentation "Qu'est-ce que WP-Cron?»Dans le manuel officiel du plugin WordPress.

WP-Cron contre Cron

La principale différence entre WordPress Cron et le planificateur Cron est que wp-cron.php ne fonctionne que lorsque lorsqu'un utilisateur visite votre site Web et déclenche un chargement de page. Cela signifie que WordPress a besoin d'une requête HTTP / HTTPS de votre site Web afin d'exécuter les tâches planifiées. La tâche cron est ensuite mise en file d'attente pour s'exécuter.

Vous pouvez être en ce moment pour demander:

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

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

La deuxième différence est que lorsque vous utilisez cron, vous pouvez définir des heures spécifiques (par exemple, 17h00 tous les jours pour effectuer une tâche). Dans WP-Cron, par contre, vous définissez des intervalles (par exemple 14h00 et intervalle X après). WP-Cron effectue ensuite la tâche à ces intervalles tant qu'un utilisateur a visité la page. Pour plus d'informations, consultez également: Principes de base de la planification cron WP.

WP cron et performances

Étant donné que WP-Cron est déclenché chaque fois qu'un utilisateur visite votre site Web, cela peut causer des problèmes pour les petits et les grands sites Web. Pourquoi, je vais vous expliquer maintenant.

Petits sites Web spécifiques géographiquement

Le problème avec les sites Web plus petits et à faible trafic est que la tâche périodique ne s'exécute pas assez souvent. Par exemple, que se passe-t-il si vous souhaitez que votre site Web soit sauvegardé à 2 h du matin, mais que vous avez un petit site de guide de voyage qui ne fonctionne que dans une seule ville. Dans ce cas, il est peu probable que votre public cible visite votre site Web à 2 heures du matin et déclenche la tâche cron. Et si c'est la basse saison, vous pourriez ne pas avoir de visiteur sur votre site pendant des jours.

Sites Web plus grands et portée mondiale

Cependant, pour les sites Web avec un grand nombre d'utilisateurs, WP-Cron peut causer des problèmes de performances et même rendre votre site vulnérable à une attaque DDoS. Eh bien, si vous venez probablement de prendre votre souris ou votre tasse de café en panique à la mention d'une attaque DDoS: ne vous inquiétez pas trop, il y a une solution à tout.

Quelle est la cause du problème?

La quantité de trafic est à l'origine du problème. Bien sûr, pour les grands sites Web, le trafic est une nécessité et une entreprise, donc limiter les vues n'est pas une option pour résoudre le problème.

Nous nous souvenons: chaque visite sur le site entraîne le déclenchement de WP-Cron - et cela charge bien sûr votre serveur car des ressources sont nécessaires pour cela.

Y a-t-il un meilleur moyen?

Heureusement, la réponse est oui". Nous ne pouvons pas simplement contenir le trafic, ouvrir des magasins physiques dans le monde entier ou modifier la structure de WordPress. Mais nous pouvons changer ce qui fait fonctionner WP-Cron.

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

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

Afin de rendre votre travail aussi simple que possible, l'équipe de RAIDBOXES a intégré cette fonction directement dans le tableau de bord RB. Vous avez littéralement besoin de cinq clics pour configurer l'exécution côté serveur des cronjobs WordPress! Si vous, en tant que développeur, souhaitez gagner du temps, c'est l'un des ajustements les plus faciles à faire.

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

Qu'est-ce que WP-Cron et quand les «vrais» travaux cron ont-ils un sens pour votre site Web WordPress?

Vous verrez maintenant toutes les options de configuration pour vos tâches cron.

Qu'est-ce que WP-Cron et quand les «vrais» travaux cron ont-ils un sens pour votre site Web WordPress?

Vous devez maintenant effectuer la configuration suivante dans les tâches cron:

  1. "Exécutez WP-Cron" éteindre (cela empêche WP-Cron d'être déclenché par les visiteurs du site Web).
  2. "Exécutez WP-Cron côté serveur" allumer (cela ajoutera une tâche cron au serveur pour déclencher wp-cron.php à l'intervalle que vous avez défini).

C'est tout!

Danger

Si vous Exécutez WP-Cron désactiver et aussi l'option Exécutez WP-Cron côté serveur est désactivé, plus aucune tâche cron ne sera exécutée sur votre site.

Pour cet ajustement il n'est pas nécessaire de contacter votre hébergeur, d'aller dans le cPanel ou d'éditer manuellement votre fichier wp-cron.php. Avec RAIDBOXES, vous n'avez besoin que de quelques clics et vous pouvez surveiller et gérer vos tâches cron directement dans le tableau de bord RB. Vous n'avez donc pas besoin d'installer un plugin supplémentaire pour afficher vos tâches cron.

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

Qu'est-ce que WP-Cron et quand les «vrais» travaux cron ont-ils un sens pour votre site Web WordPress?

Il y a beaucoup de spéculations à ce sujet "Autre" Intervalle pour vos tâches cron. Nous recommandons généralement de ne pas dépasser 5 minutes.

Modification de vos tâches cron WordPress

Sans plugins

Si vous ne souhaitez pas installer de plugin pour éditer votre fichier wp-cron.php, ce n'est pas un problème! Avec RAIDBOXES, vous pouvez facilement gérer vos tâches cron comme décrit ci-dessus via le tableau de bord RB. Bien sûr, vous pouvez également accéder à vos tâches cron avec nous 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 SSH, consultez notre article «Le flux de travail de développement WordPress parfait avec Git et SSH».

Avec des plugins

Le plugin actuellement le plus populaire pour la gestion des tâches WP Cron est "WP Crontrol». Vous pouvez également utiliser le plugin directement dans votre WordPress sous Plugins rechercher et installer.

Qu'est-ce que WP-Cron et quand les «vrais» travaux cron ont-ils un sens pour votre site Web WordPress?

Vous pouvez également trouver une documentation utile sur la page du plugin WP Crontrol sur WordPress.org comment utiliser correctement le plugin.

Configuration manuelle du serveur pour déclencher WP-Cron (pas nécessaire avec RAIDBOXES)

Avec un peu de configuration, vous pouvez également configurer vous-même votre serveur pour que wp-cron.php soit exécuté à certains intervalles.

  1. Modifiez le wp-cron.php

Dans wp-cron.php

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

Après cela, wp-cron.php n'est plus déclenché lorsqu'un utilisateur visite votre site Web.

  1. Ajouter une tâche cron à votre serveur

Dans votre environnement serveur

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

  • Si vous utilisez un service d'hébergement WordPress partagé, 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 exécutez votre site Web avec cPanel et avez accès à votre ligne de commande, jetez un œil à celui correspondant documentation cPanel un.

Le fichier WP-Cron est facilement ignoré lors de la création d'un site Web WordPress, mais peut entraîner des erreurs notables si votre site reçoit beaucoup de trafic.

Préparez WordPress pour les pics de trafic

Vous attendez-vous à beaucoup de trafic sur votre site WordPress, par exemple en raison d'une campagne marketing? Ensuite, la bonne préparation est requise! Notre responsable du développement Matthias vous montrera quelles 13 mesures vous pouvez utiliser pour armer votre WordPress pour des charges élevées.

Conclusion

J'espère que cet article vous aidera à comprendre ce qu'est la fonctionnalité 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 l'essentiel.

Notre objectif est de rendre la gestion de vos tâches WP Cron aussi simple et pratique que possible via le tableau de bord

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *