Comment afficher et gérer les tâches WordPress Cron

Publié: 2022-05-11

Cron est un planificateur de tâches qui permet aux utilisateurs d'exécuter des tâches planifiées dans des systèmes d'exploitation Linux ou de type Unix.

WordPress a son propre Cron connu sous le nom de WP-Cron. L'objectif principal de WordPress Cron est d'exécuter les tâches principales de WordPress. Dans cet article, nous expliquerons ce qu'est WP-Cron, comment afficher et gérer les tâches WordPress Cron, ainsi que comment désactiver WP-Cron sur votre site Web.

Table des matières

Qu'est-ce que WordPress Cron
Comment gérer les tâches Cron
Affichage des événements WordPress Cron
Modification des événements Cron
Ajouter un nouvel événement Cron
Horaires Cron
Désactiver Wp Cron
Conclusion

Qu'est-ce que WordPress Cron ?

WordPress Cron (WP-Cron) fait référence à la façon dont WordPress facilite la planification des tâches. Ces tâches sont appelées tâches Cron. Des exemples de tâches Cron incluent : la publication de publications planifiées, la réalisation de sauvegardes et de vérifications de mise à jour.

Le WordPress Cron fonctionne sur la base de tâches planifiées en vérifiant ce qui doit être exécuté, lors du chargement d'une page. Ceci est cependant parfois un inconvénient car s'il n'y a pas de chargement de page à un moment où il y a une tâche planifiée, cela entraînera une erreur. Cependant, même si c'est un inconvénient, il y a une assurance que la tâche finira par s'exécuter, au moins jusqu'au prochain chargement de la page en fonction de la position de la tâche dans la file d'attente.

Comment gérer les tâches Cron

Avec l'aide du plugin WP Crontrol, il est effectivement possible de visualiser, d'ajouter et de modifier les tâches Cron.

Pour utiliser le plugin, accédez à la section Plugins> Ajouter un nouveau dans votre tableau de bord WordPress et recherchez le plugin WP Crontrol.

Ensuite, installez et activez le plugin.

Une fois l'installation terminée, vous pouvez ensuite procéder à la gestion des tâches Cron sur votre site WordPress.

Affichage des événements WordPress Cron

Pour afficher les événements WordPress Cron, accédez à la section Outils > Événements Cron dans votre tableau de bord WordPress.

Ici, vous pouvez voir tous les événements en place qui doivent être exécutés sur votre site Web.

Les événements sont regroupés en différentes catégories :

  • Événements sans action
  • Événements principaux de WordPress
  • Événements personnalisés

Sous la première colonne, vous pouvez avoir une vue des crochets utilisés pour exécuter l'événement Cron. Le nom du crochet donne une idée de ce que fait l'événement planifié. Les crochets avec le préfixe wp sont des crochets d'événement de base WordPress. Ces crochets ne peuvent pas être supprimés.

Dans la deuxième colonne, il y a la section "Arguments". Cette colonne contient les arguments passés au hook. Si un crochet ne contient pas d'argument, alors l'espace réservé "Aucun" est affiché.

La troisième colonne est "Prochaine exécution". Cela affiche la prochaine fois qu'un événement Cron s'exécutera ainsi que l'intervalle de temps jusqu'à la prochaine exécution de l'événement.

La quatrième colonne est "Action". Ici, nous avons les actions que les crochets Cron effectueront.

"Récurrence" est la dernière colonne. Il contient une définition du moment où l'événement se répète ou l'événement se reproduit.

Modification des événements Cron

Pour modifier un événement Cron, survolez l'événement Cron et cliquez sur le lien de modification de l'événement.

Vous serez alors redirigé vers la section "Modifier l'événement Cron". Ici, vous pouvez personnaliser l'événement selon vos préférences.

Ajouter un nouvel événement Cron

Créer un nouvel événement Cron en cliquant sur le bouton "Ajouter un nouveau" dans la section Événements Cron.

Vous serez alors redirigé vers l'écran suivant où vous avez la section "Ajouter un événement Cron".

Dans cette section, spécifiez le type d'événement (qu'il s'agisse d'un événement standard ou PHP Cron).

Ensuite, spécifiez un nom de hook. Le nom du hook doit suivre la convention de dénomination de WordPress. Dans notre cas ici, nous ajouterons le nom du hook « wpb_publish_post » .

Dans la section des arguments, vous pouvez remplir les arguments que vous devez ajouter dans le tableau. Ceci est cependant facultatif.

Dans la section "Prochaine exécution", spécifiez l'heure à laquelle l'événement se déroulera et dans la section "Récurrence", spécifiez la fréquence à laquelle l'événement se déroulera.

Vous trouverez ci-dessous un exemple d'illustration des détails que nous préciserons dans notre cas ici :

Lors de l'ajout de l'événement, nous aurons une vue de l'événement à partir de la liste des événements comme indiqué ci-dessous :

Maintenant, ajoutez le code PHP qui détermine ce que fait le hook au fichier functions.php de vos thèmes.

Dans notre cas ici, nous ajouterons le code pour publier un article spécifique. Pour ce faire, vous devrez ajouter le code suivant :

 function publish_post_func(){ //Assign your Post ID $post = 717; //Run the publish post function $result = wp_publish_post($post); } add_action( 'wpb_publish_post', 'publish_post_func' );

Ce que ce code fera, c'est publier l'un de nos messages, dont l'ID de message 717. Vous pouvez utiliser un ID de message de votre préférence en fonction des messages disponibles sur votre site Web.

Notez que la récurrence de l'événement que nous avons spécifiée est "Non répétitive" puisque vous ne pouvez publier un article qu'une seule fois.

Une fois l'heure définie pour la « Prochaine exécution » atteinte, la publication sera alors publiée. Ci-dessous un screencast à ce sujet :

Horaires Cron

Le plugin WP Crontrol contient les horaires Cron par défaut. Ceux-ci peuvent être identifiés à partir de la section Paramètres > Cron Schedules de votre tableau de bord WordPress. Si vous avez des plugins qui ajoutent des horaires personnalisés, ceux-ci seront également reflétés dans cette section. Vous pouvez également ajouter vos propres horaires personnalisés dans la section. Vous trouverez ci-dessous un exemple d'illustration de cette section :

Si vous souhaitez ajouter les horaires manuellement via le code, cela est également réalisable. Vous trouverez ci-dessous un exemple de code pour ajouter un intervalle Cron de soixante secondes. Vous pouvez ajouter le code au fichier function.php de vos thèmes :

 add_filter( 'cron_schedules', 'cron_interval' ); function cron_interval( $schedules ) { $schedules['sixty_seconds'] = array( 'interval' => 60, 'display' => esc_html__( 'Every Sixty Seconds' ), ); return $schedules; }

Une fois ajouté, vous aurez une vue du calendrier dans la liste des calendriers Cron :

Désactiver Wp Cron

Dans les sites à fort trafic, WordPress Cron peut avoir un impact négatif sur les performances de votre site Web, en particulier en ce qui concerne le chargement des pages. Dans de tels cas, il serait logique de désactiver le WordPress Cron et d'utiliser à la place le Server Cron.

Afin de désactiver le WordPress Cron par défaut, vous devrez effectuer les opérations suivantes :

Accédez aux fichiers de votre site via FTP. Vous pouvez le faire en utilisant un logiciel FTP tel que Filezilla ou un panel tel que cPanel fourni par votre hébergeur.

Accédez à la racine de vos fichiers WordPress et sélectionnez pour modifier le fichier wp-config.php.

Dans le fichier, ajoutez le code ci-dessous juste au-dessus de la ligne "/* C'est tout, arrêtez d'éditer !" Bonne publication. */".

 define('DISABLE_WP_CRON', true);

Vous trouverez ci-dessous un exemple de capture d'écran à ce sujet :

Une fois cela fait, enregistrez vos modifications.

Conclusion

Avec WordPress Cron, vous pouvez planifier des événements Cron assez facilement. Dans cet article, nous avons couvert ce que sont les tâches Cron, comment les gérer à l'aide du plugin WP Crontrol ainsi que comment désactiver WordPress Cron.

Nous espérons que cet article a été utile pour fournir des informations sur la façon de gérer les événements WordPress Cron. Si vous avez des questions ou des suggestions, n'hésitez pas à laisser un commentaire ci-dessous.