init
Définition : init est une action WordPress déclenchée lorsque l’essentiel du système est chargé et avant l’envoi normal des en-têtes HTTP. Elle permet notamment d’enregistrer des types de contenus, des taxonomies ou des fonctionnalités.
Terminologie
Terme : init
Autres appellations : Initialisation WordPress, init hook
À quoi cela sert
Le hook init intervient après le chargement du Core et des extensions, à un stade où beaucoup d’API de WordPress sont disponibles et où l’utilisateur courant peut généralement être connu. Il est très utilisé pour les enregistrements qui doivent exister avant le traitement des pages.
Dans quel contexte l’utiliser
L’employer pour des déclarations légères et reproductibles, comme register_post_type() et register_taxonomy(). Éviter d’y lancer des traitements lourds à chaque requête ou de supposer que toutes les données de la requête principale sont déjà prêtes.
Exemple concret
Un plugin ajoute une taxonomie interne destinée à classer des fiches de formation.
Exemple de code commenté
<?php
add_action( 'init', function () {
register_taxonomy( 'atoolpha_theme', array( 'post' ), array(
'label' => 'Thèmes de démonstration',
'public' => false,
'show_in_rest' => true,
) );
} );
Explication de l’exemple
La taxonomie est enregistrée à chaque chargement sans écrire à chaque fois en base. Elle est associée au type post existant à titre de démonstration ; dans un vrai projet, choisir le type et les droits adaptés.
Précautions et limites
Un hook init n’autorise aucune opération sensible à lui seul. Toute écriture issue d’une requête nécessite contrôle d’accès, validation et protection appropriée.
Termes associés
- plugins_loaded
- wp_loaded
- register_post_type()
- Hook Execution Order
