5.4Introduction au développement WordPress
L'essentiel en 30 secondes
- Les hooks sont le mécanisme d'extension de WordPress : on insère du code sans modifier le cœur.
- Action = exécuter quelque chose à un moment ; filtre = modifier une donnée au passage.
- Le code personnalisé va dans le functions.php d'un thème enfant, jamais dans le thème parent ni dans le cœur, et se teste en local.
Mini-cas filé — un petit ajustement sur mesure
Hassan veut ajouter une mention « pièce unique » sous le prix des créations. Samir cherche d'abord une extension ; aucune ne correspond exactement. Il écrit alors un petit filtre dans le thème enfant, testé en local, qui ajoute la mention uniquement sur la catégorie concernée. Il documente le snippet pour pouvoir le retrouver plus tard.
Suite du cas 5.3 — après la conformité, un peu de code sur mesure.
1. Le mécanisme des hooks
WordPress est conçu pour être étendu sans être modifié. Le mécanisme central est le hook : un point d'ancrage où l'on accroche son code. Les actions permettent d'exécuter quelque chose à un moment précis (après l'enregistrement d'un article, à l'envoi d'un e-mail) ; les filtres permettent de modifier une donnée au passage (un titre, un prix, un texte).
Thèmes et extensions utilisent massivement ces hooks : c'est ce qui permet de les faire cohabiter. Comprendre cette logique suffit pour lire beaucoup de code WordPress et pour intervenir ponctuellement, sans devenir développeur immédiatement.
2. Où mettre son code
Un thème contient des modèles, des styles et un fichier functions.php où l'on déclare des fonctions. Une extension est un paquet autonome qui ajoute des fonctionnalités. Samir ne touche jamais au cœur de WordPress : la prochaine mise à jour effacerait tout.
Le code personnalisé va dans le functions.php d'un thème enfant (ou dans une petite extension dédiée), jamais dans le parent. Il est testé en local ou sur staging, commenté et sauvegardé. Un snippet bien ciblé vaut souvent mieux qu'une grosse extension pour un besoin très précis.
🔎 Exemple concret — Ajouter une mention sur une catégorie (cas Samir)
Besoin : « pièce unique » sous le prix, catégorie creations.
1. Chercher une extension → aucune ne correspond.
2. Thème enfant actif.
3. Filtre testé en local sur le prix affiché.
4. Vérification : catégorie creations uniquement.
5. Snippet commenté + sauvegarde.
→ Aucune modification du thème parent.
Résultat : un ajustement précis et durable.
Leçon : chercher l'extension d'abord, coder ensuite, toujours dans l'enfant.
Vocabulaire de la section
- Hook
- Point d'ancrage où l'on accroche du code pour étendre WordPress.
Exemple simple : un filtre sur le prix affiché.
Ce que ce n'est pas : modifier le cœur de WordPress.
Réflexe : étendre par les hooks, pas par le cœur.
- Action
- Hook qui exécute du code à un moment précis.
Exemple simple : envoyer une notification après publication.
Ce que ce n'est pas : confondre action et filtre.
Réflexe : action = faire à un moment.
- Filtre
- Hook qui modifie une donnée au passage et la renvoie.
Exemple simple : ajouter une mention au prix.
Ce que ce n'est pas : afficher directement sans renvoyer la valeur.
Réflexe : filtre = modifier et retourner.
- functions.php
- Fichier du thème où l'on déclare des fonctions et des hooks.
Exemple simple : le fichier du thème enfant.
Ce que ce n'est pas : éditer celui du thème parent.
Réflexe : fonctions custom dans l'enfant.
- Extension maison
- Petite extension dédiée à une fonctionnalité, indépendante du thème.
Exemple simple : un snippet empaqueté pour durer.
Ce que ce n'est pas : tout mettre dans le thème au risque de perdre au changement.
Réflexe : le code métier peut vivre dans une extension.
En pratique — Lire et placer un hook
- Repérez dans la documentation un hook adapté à un petit besoin.
- Activez un thème enfant et ouvrez son functions.php.
- Ajoutez un filtre ou une action simple, testée en local.
- Vérifiez le résultat, commentez le snippet et sauvegardez-le.
Script prêt à dire — expliquer le sur-mesure (25 s)
« Pour un besoin très précis, je peux ajouter un petit bout de code dans un thème enfant, sans toucher au cœur de WordPress. C'est testé à part et conservé lors des mises à jour. Pour tout le reste, on privilégie une extension éprouvée. »
Montrer la prudence : extension d'abord, code ensuite.
Modèle copier-coller — fiche snippet
BESOIN : _______________
EXTENSION EXISTANTE TESTÉE : oui / non
HOOK UTILISÉ : action / filtre
FICHIER : functions.php du thème enfant
TESTÉ EN LOCAL / STAGING : oui / non
COMMENTAIRE DANS LE CODE : oui / non
SAUVEGARDE DU SNIPPET : oui / non
Petit ajustement
Un filtre ciblé dans le thème enfant.
Fonction métier
Une petite extension maison, indépendante du thème.
Apprentissage
Tester des hooks en local sur un site de démonstration.
Équipe
Versionner le code et documenter chaque snippet.
✓ Bonnes pratiques
- Chercher une extension avant de coder.
- Toujours passer par le thème enfant.
- Tester en local ou sur staging.
✗ Pièges fréquents
- Modifier le cœur de WordPress.
- Coller du code dans le thème parent.
- Laisser un snippet non testé en production.
Points clés à retenir
- Les hooks étendent WordPress sans modifier le cœur.
- Action = exécuter ; filtre = modifier une donnée.
- Le code va dans le functions.php de l'enfant.
- On teste en local et on documente.
Défi 48h — appliquez demain
Trouvez un hook simple dans la documentation, ajoutez-le dans un thème enfant et vérifiez le résultat en local. Commentez le snippet. 30 minutes.
- Je distingue actions et filtres.
- Je place mon code dans un thème enfant.
- Je teste et documente un snippet.
Questions fréquentes
Faut-il apprendre PHP pour développer sur WordPress ?
Oui, PHP est le langage de WordPress, avec du HTML, du CSS et du JavaScript selon les besoins. On peut toutefois démarrer par de petits hooks sans être expert, puis approfondir si le développement vous attire.
Extension existante ou code sur mesure ?
Cherchez toujours une extension éprouvée d'abord : moins de maintenance et testée par de nombreux sites. Le code sur mesure se justifie quand aucune extension ne répond ou pour un besoin très précis, avec un snippet ciblé plutôt qu'une grosse extension.
Où tester mon code sans risque ?
En local ou sur un site de staging, avec un thème enfant. Jamais directement en production sur le site du client. Sauvegardez avant et gardez une trace du snippet.
Qu'est-ce qu'un hook dans WordPress ?