Cinquante actions de WordPress - 50 exemples (21 à 30)

Dans cette série, nous examinons les actions WordPress: un type de hook offert par l'application qui nous permet de personnaliser l'exécution. Dans le dernier article, nous avons examiné la deuxième série de 10 actions portant jusqu'à 20 actions que nous avons couvertes jusqu'à présent..

Conformément à l’esprit des articles précédents, nous allons examiner 10 actions supplémentaires ainsi que des exemples de chacune d’elles.. 

Cela dit, reprenons.

Manipuler get_posts () Avant qu'il soit traité

le pre_get_posts action gère l'une des fonctions de requête les plus importantes: get_posts ().

Inclusion de types de publication personnalisés dans les résultats de la recherche

Supposons que vous dirigiez un blog de critique de film et que vous ayez besoin du type de message "Films" pour apparaître dans les résultats de la recherche. Vous pouvez inclure n'importe quel type de publication à l'aide des lignes de code suivantes:

is_main_query ()) if ($ query-> is_search) $ query-> set ('post_type', array ('post', 'movie'));  // Exemple de source: http://codex.wordpress.org/Plugin_API/Action_Reference/pre_get_posts?>

Voilà! Maintenant, les résultats de recherche de votre site Web incluront le type de message "Films" en plus des messages normaux..

Travailler avec les changements de statut de post

Il y a en fait beaucoup d'actions pour les transitions post status - draft_to_publish, new_to_future, publier_au_privé etc. WordPress rassemble cet ensemble d’actions et l’appelle $ old_status _to _ $ new_status dans le Codex.

Mais si vous avez besoin d’une action pour garder un œil sur tous les changements de statut, vous pouvez utiliser le bouton état de transition action.

Envoi d'un courrier électronique à l'administrateur chaque fois qu'un statut de publication a été modifié

Imaginez que vous dirigiez un blog multi-auteurs avec trois éditeurs et que vous ayez besoin d'informations sur chaque changement de statut. Si tel est le cas, vous pouvez utiliser l'extrait de code ci-dessous:

post_type! == 'post') return;  $ title = $ post-> post_title; $ to = get_option ('admin_email'); $ subject = 'Le statut de la publication a été modifié'; $ body = "Hé, \ n \ nLe statut de la publication \" $ title \ "a été changé de \" $ old_status \ "à \" $ new_status \ ". \ n \ nCheers!"; wp_mail ($ to, $ subject, $ body); ?>

Mise en file d'attente de scripts pour les pages d'administration

Si vous avez besoin d’injecter un fichier JavaScript dans le panneau d’administration de votre site Web, le admin_enqueue_scripts L'action est faite pour vous: Cette petite action pratique est responsable de la mise en file d'attente des scripts (et des styles) à l'intérieur du tableau de bord WordPress.

Injection d'un script pour les écrans d'ajout / modification de publication

Supposons que vous ayez créé une méta-boîte spéciale, mais que vous ayez besoin d'un fichier JavaScript dans le dossier de votre plugin pour que la méta-boîte fonctionne. Que faire? Vous n'imprimez pas

'; ?>

Changer les variables $ disqus_username $ number_of_comments et vous êtes prêt à partir!

Définition de l'utilisateur actuel

Oh regarde, une action pour une fonction enfichable! WordPress définit les "fonctions enfichables" comme ceci:

Ces fonctions peuvent être remplacées via des plugins. Si les plugins ne redéfinissent pas ces fonctions, elles seront utilisées à la place..

Et cette petite action pratique fait partie du plug-in wp_set_current_user fonction principale, qui change l'utilisateur actuel par son ID ou son nom.

Supprimer la barre d'outils pour les abonnés

Nous n'allons pas changer d'utilisateur pour le moment, mais plutôt profiter de l'action pour vérifier les capacités de l'utilisateur actuel, puis désactiver la barre d'outils si l'utilisateur n'est qu'un abonné:

Chargement de plugins

Si vous avez besoin de faire quelque chose après que WordPress ait fini de charger les plugins activés, vous pouvez compter sur plugins_loaded action.

Commencez votre plugin

La bonne façon d’initialiser votre plugin et de le faire fonctionner consiste à lier sa fonction principale au plugins_loaded action. Nous avons ici l'exemple le plus simple au monde:

Ceci est un texte factice!

'; // Exemple de source: http://www.scratchinginfo.com/common-wordpress-action-hooks-for-plugin-development/?>

Si vous avez besoin d'un meilleur exemple, et je suis sûr que vous en avez, vous devriez absolument consulter le "WordPress Plugin Boilerplate" de Tom McFarlin qui contient tout ce dont vous avez besoin pour créer un plugin WordPress avec le concept de programmation orientée objet à l'esprit..

Fin de la troisième partie

Nous avons parcouru le troisième lot de 50 actions dans cet article. J'espère que vous avez aimé et appris de nouvelles choses. On se voit dans le prochain!

Je veux aussi entendre vos pensées. Que pensez-vous de ces actions? Postez vos commentaires ci-dessous; et si vous avez aimé l'article, n'oubliez pas de le partager!