Experts maintenance WordPress depuis 2016 | 4.7/5 avis vérifiés

Comprendre et utiliser les hook WordPress efficacement

Nicolas Lecat - Expert WordPress
Comprendre et utiliser les hook WordPress efficacement
Sommaire

Comprendre le fonctionnement des hooks WordPress

Le système de hooks WordPress est une fonctionnalité puissante, au cœur de son architecture. Il permet d’interagir avec le core, les plugins et le thème, offrant une grande flexibilité pour personnaliser votre site.

Les hooks sont en réalité des points d’exécutions dans le code où il est possible d’ajouter, de modifier ou de retirer des fonctionnalités. Mais, concrètement, comment cela marche ?

Un hook est un point d’accroche. Il permet d’exécuter du code à des moments spécifiques.

Ces points d’ancrage sont dispersés dans tout le code de WordPress, et sont là pour vous offrir la possibilité de modifier le comportement du CMS. Vous pouvez par exemple, comme un expert l’indiquerait, modifier l’affichage d’un article, ajouter un script personnalisé, ou encore agir sur la sauvegarde des données.

Qu’est-ce qu’un hook ?

Pour commencer c’est quoi un hook wp ? En termes simples, un hook est une sorte de ‘crochet’ dans le flux d’exécution de WordPress.

Il y a deux types principaux de hooks : les actions (actions) et les filtres (filters). Les actions permettent d’ajouter une fonctionnalité, tandis que les filtres donnent la possibilité de modifier des données.

L’intérêt est de pouvoir étendre les fonctionnalités de WordPress sans modifier le code source du core, facilitant les mises à jour.

  • Les actions exécutent des functions additionnelles à un point spécifique.
  • Les filtres modifient la data avant son utilisation ou son output.

Les hooks permettent ainsi de greffer des extensions ou modifier des éléments de votre site sans toucher au code principal de WordPress. Ceci est important pour la maintenance, car vous évitez des conflits et facilitez les mises à jour du système.

Les types de hooks WordPress : action et filtre

Comme expliqué, il existe deux grands types de hook wordpress : action et filter. Les actions, via add_action, permettent d’exécuter une function à un point spécifique du code.

Vous pouvez par exemple lancer une function pour envoyer un email après la publication d’un nouvel article. Les filtres, via add_filter, permettent de modifier les variables ou un output.

Par exemple, un filtre peut modifier le titre d’une page avant qu’elle ne s’affiche. L’utilisation de ces hooks est la méthode privilégiée pour ajouter ou modifier une fonctionnalité.

En utilisant les hooks, le développeur va pouvoir créer une extension ou une fonctionnalité custom.

Comment utiliser les hooks WordPress ?

L’utilisation des hooks dans WordPress repose sur des functions spécifiques. Pour ajouter une action, on utilise add_action, avec deux principaux arguments : le tag du hook, et la function à exécuter.

Pour un filtre, on utilise add_filter, de manière similaire, mais cette function modifiera un élément existant.

Voici un exemple pour illustrer une action :
add_action( 'publish_post', 'my_custom_function' );
Et pour illustrer l’utilisation d’un filtre :
add_filter( 'the_title', 'my_title_filter' );

Dans ces exemples, publish_post et the_title sont les tags des hooks, et my_custom_function et my_title_filter sont les functions (callbacks) exécutées à ces points spécifiques du code.

Où trouver et utiliser les hooks WordPress ?

Mais comment sont définis ces hooks ? Ils sont un peu partout.

Pour trouver des hooks existants, la documentation WordPress est votre meilleure amie. Vous pouvez y voir tous les hooks disponibles, et comment ils fonctionnent, ainsi que leurs arguments.

Les hooks sont utilisés aussi bien dans le core de wordpress que dans les plugins ou thèmes.

Par exemple, un développeur pourra utiliser des hooks disponibles dans un plugin pour modifier son fonctionnement ou créer une nouvelle option, une extension. Il peut aussi modifier le comportement de certaines functions du CMS en utilisant des hooks de manière pertinente, en y ajoutant sa propre logique ou ses propres actions.

Quel est le but de la fonction add_action?

La function add_action a pour but d’accrocher votre propre function à un moment précis dans le cycle d’exécution de WordPress. Cela permet d’ajouter du code sans modifier les fichiers principaux du core, du plugin ou du thème.

En d’autres termes, elle permet d’étendre les possibilités de votre site. C’est vraiment la base de l’extension WordPress.

Voici un autre exemple concret d’utilisation de add_action :

 function my_custom_script() {
	    wp_enqueue_script( 'my-script', get_stylesheet_directory_uri() . '/js/my-script.js', array('jquery'), '1.0.0', true );
	}
    add_action( 'wp_enqueue_scripts', 'my_custom_script' );

Ici, cette portion de code ajoute un script custom en utilisant wp_enqueue_script. L’action wp_enqueue_scripts garantit que le script sera ajouté au bon moment.

Ainsi, nous connectons notre code, notre function, à l’exécution de cette action.

Fonctionnement des filtres WordPress : l’exemple de add_filter

Les filtres permettent de modifier les data qui vont être utilisées par une autre function. add_filter est une function qui, une fois exécutée, permet de modifier un élément existant, avant qu’il ne soit affiché ou utilisé.

À noter que c’est une modification par valeur, pas une modification « dans le dur ». Par exemple, on peut changer la valeur d’un texte ou modifier l’apparence d’un élément.

Voici un exemple pratique d’utilisation de add_filter:

 function my_custom_title( $title ) {
		return 'Custom: ' . $title;
	}
	add_filter( 'the_title', 'my_custom_title' );
     

Dans cet exemple, chaque title d’un article ou une page sera précédé par « Custom: « . Le hook the_title permet de modifier le title avant l’output.

La function my_custom_title récupère la title, lui ajoute notre texte, et la return. Et add_filter fait le reste, il indique que la function doit s’exécuter quand l’événement the_title sera lancé par WordPress.

Vous voyez ici la puissance de ce mécanisme.

Créer un hook personnalisé

Il est possible de créer son propre hook. Le but de la manœuvre est de permettre aux développeurs d’ajouter ou de modifier des parties de votre code.

Pour cela, utilisez la function do_action(). Voici comment vous pouvez l’utiliser : do_action( 'my_custom_action' );
Et pour connecter une function à ce hook, utilisez : add_action( 'my_custom_action', 'my_custom_function' );

Cette méthode est parfaite si vous souhaitez permettre la modification de certains points spécifiques de votre plugin ou thème, par exemple. C’est un moyen simple de permettre une customisation plus poussée sans modifier le code source.

La possibilité de créer vos propres hooks vous permet ainsi d’étendre la base et d’ajouter de nouvelles fonctionnalités à WordPress, en conservant la structure de WordPress intacte.

Hooks : un système essentiel pour la flexibilité

Les hooks offrent de nombreuses possibilités. Il est possible, en les utilisant, de personnaliser un thème, de créer une nouvelle fonctionnalité ou modifier l’ordre d’affichage.

Les hooks sont très utilisés pour ajouter une extension ou une option spécifique à un site ou à un plugin. Les thèmes utilisent aussi des hooks pour permettre la modification de leur comportement.

Ces outils sont indispensables pour tout développeur WordPress qui souhaite aller au-delà des configurations standard du CMS. Ils permettent de maintenir une structure propre, facilitant les mises à jour et la maintenance, en connectant nos codes additionnels avec des moments spécifiques du cycle d’exécution de WordPress.

Comprendre comment manipuler les hooks est primordial, pour mieux utiliser WordPress.

Pour ceux qui débutent avec WordPress et son code, les hooks peuvent sembler déroutants au premier abord, mais une fois que l’on a compris leur logique, leur utilisation devient intuitive et même indispensable pour la création d’un site web ou d’une extension complète.

Comment trouver le bon hook WordPress ?

Vous avez toujours du mal à trouver le hook que vous voulez ? Pour vous aider, vous avez, comme expliqué précédemment, la documentation officielle WordPress, qui répertorie l’ensemble des hooks disponibles dans le core du CMS.

Il existe aussi des outils d’extension pour voir les hooks utilisés par d’autres plugins ou thèmes.

En résumé, il est possible, à travers l’utilisation des hooks, de modifier le fonctionnement standard de WordPress, que ce soit au niveau du core ou du thème ou même d’un plugin. C’est le développeur qui décide de quelle manière il souhaite modifier le comportement standard du CMS, grâce à la bonne utilisation de ce système.

On comprend l’importance de connaître ce fonctionnement pour une customisation poussée de votre site.

En tant qu’agence spécialisée dans l’hébergement et la maintenance WordPress, Hostay maîtrise les spécificités techniques comme les hooks. Contactez notre support client dédié si vous avez des questions ou besoin d’une intervention urgente sur votre WordPress.

Nous sommes à votre disposition par mail et même sur la ligne portable de Nicolas, notre responsable support. Nos offres d’hébergement incluent une sécurité maximale contre le piratage et une haute disponibilité.

Les hooks sont la clé pour une personnalisation avancée et une adaptation parfaite de WordPress à vos besoins. Avec ce guide, vous avez une base solide pour commencer à explorer toutes les possibilités que ce puissant système offre.

Le hook WordPress n’aura plus de secret pour vous.

Pour une compréhension encore plus approfondie de WordPress et de ses fonctionnements, n’hésitez pas à explorer d’autres ressources et les articles de notre blog.

Questions fréquentes

Comment attribuer des functions différentes pour chaque site en utilisant WPMU ?

Avec WordPress multisite, vous pouvez utiliser des hooks pour adapter le comportement de votre site internet. Il est possible de définir des functions qui ne seront exécutées que sur un site spécifique du réseau, permettant ainsi une customisation de chaque partie du réseau. Cela permet une gestion individualisée, mais centralisée de votre base de données et de votre code personnalisé.

Alors bien sûr, quel serait l’intérêt d’un thème WordPress sans ce fichier functions.php ?

Le fichier `functions.php` est l’un des fichiers les plus importants dans un thème WordPress. Il permet d’ajouter des hooks et de déclarer une multitude de functions. Sans ce fichier, il serait impossible de modifier ou d’étendre les fonctionnalités d’un thème. Vous ne pourriez pas enregistrer et utiliser des fonctions php, et toute extension deviendrait plus complexe. Sans lui, la flexibilité et la puissance de WordPress seraient considérablement réduites. C’est un peu le cœur de l’apparence et de la partie fonctionnalité d’un thème enfant.

Quels sont les hooks de base pour les plugins WordPress ?

Les plugins utilisent une multitude de hooks, notamment ceux liés à la mise à jour, l’activation et la désactivation. L’extension des fonctions via add_action et add_filter sont indispensables. Les hooks init ou wp_enqueue_scripts permettent d’ajouter des scripts au site, et certains hooks d’admin permettent d’ajouter ou de modify le tableau de bord pour l’utilisateur. Chaque type action spécifique et type filtre offre un point d’entrée pour le developer qui souhaite agir sur le fonctionnement du code de wordpress.

Comment fonctionnent les hooks WordPress ?

WordPress utilise un système de hooks pour permettre aux développeurs d’insérer du code, de modifier ou de retirer des fonctionnalités. Ce système repose sur l’utilisation de deux fonctions principales : add_action, pour attacher une function à un événement, et add_filter pour modifier des variables. Les hooks, une fois lancés (par le code de wordpress) permettent l’exécution des functions qui leur sont associées. En d’autres termes, c’est la fonction do_action qui va permettre de lancer une série de functions. Cela permet une grande flexibilité du site wordpress.

Quand utiliser les hooks personnalisés ?

Les hooks custom sont utilisés quand vous avez besoin d’un point d’accroche spécifique dans votre code. Si vous voulez permettre à d’autres développeurs de modifier un élément de votre plugin ou thème, l’utilisation des hooks personnalisés est idéale. La fonction do_action permet de lancer un hook custom et d’exécuter des functions qui y sont connectées. C’est aussi un excellent moyen de faire en sorte que votre code soit plus modifiable et extensible pour le futur.

Comment utiliser les filtres WordPress ?

Pour utiliser les filtres wordpress, vous devrez utiliser la fonction add_filter. Cette fonction prendra comme premier paramètre le nom du hook à utiliser, et en second la callback function, la fonction de rappel qui sera exécutée pour modifier la donnée. La fonction de filtre doit toujours return une nouvelle valeur. C’est, par exemple, un très bon moyen de modify le contenu d’une variable.

Comment trouver les hooks WordPress?

Pour trouver les hooks wordpress, la première chose est la documentation officielle du cœur de wordpress. Sinon, il existe des extensions qui permettent d’afficher les hooks et le tag utilisés dans le site. Un bon developer, utilisera la documentation et son expérience pour trouver le hook adéquat. C’est une part essentielle du développement d’une extension.

Qu’est ce que le hook ?

Un hook wordpress est, concrètement, un point d’ancrage, une zone définie dans le code de wordpress core ou d’un plugin, qui va permettre, grâce à la fonction add_action ou add_filter d’insérer notre propre function. Un hook permet de lancer quelque chose et connecter notre propre code au code de wordpress. L’extension de code est ainsi simplifiée. C’est grâce aux hooks que nous pouvons modify l’apparence, les fonctions ou le comportement de WordPress. Ils permettent de faire un custom login et de personnaliser d’autres éléments HTML.

Mais comment sont définis ces hooks ?

Les hooks sont définis directement dans le code de WordPress, dans le core ou dans certaines extensions. Ils sont insérés dans le code de wordpress par le developer grâce à la fonction do_action, permettant l’ajout de code et son extension. La manière dont un hook sera lancé dépend de son emplacement dans le code source. Mais, grâce au système de add_action ou add_filter, vous pouvez le modifier, le retirer grâce à remove_action ou remove_filter.

Comment utiliser wp_enqueue_script ?

La fonction wp_enqueue_script est utilisée pour ajouter des scripts javascript à un site web WordPress. Cette fonction permet d’enregistrer et d’ajouter un nouveau script avec le tableau de bord et de le charger dans le pied de page ou l’en-tête. C’est une meilleure pratique que d’ajouter le code directement. Cela permet de gérer l’ordre d’exécution des scripts et de faciliter leur gestion et mise à jour. Le but principal est d’enregistrer un script qui pourra être utilisé with ajax ou toute chose liée au front end, dans une logique bien spécifique.

Hostay : L’assistance technique WordPress ultra-réactive

Une urgence ?
Je suis Nicolas, responsable du support technique Wordpress chez Hostay. Besoin d'aide ? Appelez-moi de 9h à 18h.
Diagnostic gratuit en 10 minutes