1️⃣ Qu’est-ce qu’un hook dans WordPress ?
Un hook (crochet en français) est un point d’ancrage dans le code de WordPress où vous pouvez insérer du code personnalisé pour modifier ou ajouter des fonctionnalités.
✅ Sans modifier le code source 🎯
✅ Facile à utiliser 🛠️
✅ Compatible avec les mises à jour de WordPress 🔄
📌 Il existe deux types de hooks :
- Les actions 👉 Pour ajouter ou exécuter du code à un moment précis
- Les filtres 👉 Pour modifier des données avant leur affichage ou enregistrement
2️⃣ Les actions WordPress : Ajouter du code à un moment précis
Les actions permettent d’exécuter une fonction à un moment précis du cycle de WordPress (chargement du thème, affichage du contenu, enregistrement d’un utilisateur, etc.).
📌 2.1 Syntaxe d’une action
phpCopierModifieradd_action('nom_du_hook', 'nom_de_votre_fonction');
function nom_de_votre_fonction() {
// Code à exécuter
}
👉 Exemple : Ajouter un texte avant le contenu d’un article
phpCopierModifierfunction ajouter_message_avant_contenu($contenu) {
if (is_single()) {
$contenu = '<p><strong>🔥 Bonne lecture !</strong></p>' . $contenu;
}
return $contenu;
}
add_filter('the_content', 'ajouter_message_avant_contenu');
🛠️ Explication :
is_single()vérifie si nous sommes sur un article- On ajoute un message avant le contenu
add_filter('the_content', ...)applique notre modification
📌 Autre exemple : Ajouter du code dans le footer
phpCopierModifierfunction ajouter_texte_footer() {
echo '<p style="text-align:center; color:gray;">© ' . date('Y') . ' - Mon Site</p>';
}
add_action('wp_footer', 'ajouter_texte_footer');
💡 Action utilisée : wp_footer → s’exécute juste avant la fermeture de <body>
3️⃣ Les filtres WordPress : Modifier des données avant affichage ou enregistrement
Les filtres permettent de modifier une valeur avant son affichage ou son stockage en base de données.
📌 3.1 Syntaxe d’un filtre
phpCopierModifieradd_filter('nom_du_hook', 'nom_de_votre_fonction');
function nom_de_votre_fonction($valeur) {
// Modifier la valeur et la retourner
return $valeur;
}
📌 3.2 Exemple : Modifier le titre d’un article
phpCopierModifierfunction personnaliser_titre($titre) {
return '🔥 ' . $titre;
}
add_filter('the_title', 'personnaliser_titre');
📌 Ce code ajoute 🔥 devant tous les titres d’articles
4️⃣ Différences entre actions et filtres 🚀
| Type | Objectif | Exemple d’utilisation |
|---|---|---|
| Action | Exécuter du code à un moment donné | Ajouter du texte avant le footer (wp_footer) |
| Filtre | Modifier une valeur avant affichage | Modifier le titre d’un article (the_title) |
💡 Une action ne retourne rien, un filtre doit retourner une valeur !
5️⃣ Quelques hooks utiles dans WordPress
📌 Hooks d’actions populaires
| Hook | Description |
|---|---|
wp_enqueue_scripts | Charger CSS et JS dans le thème |
wp_footer | Exécuter du code avant la fermeture de <body> |
init | Exécuter du code dès que WordPress est chargé |
admin_menu | Modifier le menu d’administration |
save_post | Exécuter du code après l’enregistrement d’un article |
📌 Hooks de filtres populaires
| Hook | Description |
|---|---|
the_title | Modifier le titre d’un article |
the_content | Modifier le contenu d’un article |
excerpt_length | Modifier la longueur des extraits d’articles |
login_redirect | Modifier la redirection après connexion |
comment_text | Modifier le texte des commentaires |
6️⃣ Créer ses propres hooks personnalisés 🏗️
WordPress permet aussi de créer ses propres hooks pour permettre à d’autres développeurs d’étendre votre code.
📌 6.1 Créer une action personnalisée
Dans un plugin ou un fichier functions.php, vous pouvez définir un point d’accroche :
phpCopierModifierfunction ma_fonction_perso() {
echo '<p>✨ Mon hook personnalisé !</p>';
}
add_action('mon_hook_perso', 'ma_fonction_perso');
Et vous appelez ce hook où vous voulez dans votre thème :
phpCopierModifierdo_action('mon_hook_perso');
📌 6.2 Créer un filtre personnalisé
De même, vous pouvez créer un filtre personnalisable :
phpCopierModifierfunction mon_filtre_perso($texte) {
return strtoupper($texte); // Convertit en majuscules
}
add_filter('mon_hook_filtre', 'mon_filtre_perso');
Puis l’appliquer ainsi :
phpCopierModifierecho apply_filters('mon_hook_filtre', 'Bonjour WordPress');
📌 Résultat affiché : BONJOUR WORDPRESS
7️⃣ Bonnes pratiques pour utiliser les hooks correctement
✅ Utiliser un préfixe pour éviter les conflits (monplugin_nom_hook)
✅ Toujours vérifier les données reçues (if (!is_admin()) {...})
✅ Retourner la valeur dans un filtre (return $valeur;)
✅ Documenter ses hooks pour les autres développeurs
🎯 Conclusion : Maîtrisez les hooks pour personnaliser WordPress !
🔹 Les actions permettent d’exécuter du code à un moment donné.
🔹 Les filtres permettent de modifier une valeur avant son affichage.
🔹 WordPress propose des centaines de hooks pour personnaliser le CMS.
🔹 Vous pouvez aussi créer vos propres hooks pour rendre votre code plus modulaire.
📌 Besoin d’aide ? Une question ? 💬 Dites-moi tout en commentaire ! 😊
















