admin_init
Définition : admin_init est une action WordPress appelée lors de l’initialisation de l’environnement d’administration. Elle sert notamment à enregistrer des paramètres, mais peut aussi s’exécuter dans des traitements AJAX ou admin-post.
Terminologie
Terme : admin_init
Autres appellations : Initialisation administration, Admin Init Hook
À quoi cela sert
Ce hook concerne l’initialisation de l’administration et ne se limite pas à l’affichage d’un écran dans wp-admin. Il est également exécuté pour des accès via admin-ajax.php et admin-post.php, dans des contextes où l’utilisateur n’est pas nécessairement autorisé à gérer les réglages.
Dans quel contexte l’utiliser
L’utiliser pour register_setting() ou pour préparer des composants internes à l’administration. Ne pas y exécuter une action privilégiée sans contrôle explicite du droit de l’utilisateur, de l’intention et de l’origine de la requête.
Exemple concret
Un plugin enregistre un réglage dans la section générale, sans modifier sa valeur pendant le chargement.
Exemple de code commenté
<?php
add_action( 'admin_init', function () {
register_setting( 'general', 'atoolpha_exemple_texte', array(
'type' => 'string',
'sanitize_callback' => 'sanitize_text_field',
'default' => '',
) );
} );
Explication de l’exemple
Le callback déclare un paramètre administrable avec un assainissement lors de l’enregistrement. La déclaration n’est pas une écriture en base et ne rend pas automatiquement visible un champ dans un formulaire.
Précautions et limites
Ne jamais supposer que admin_init implique un administrateur connecté : les points d’entrée AJAX et admin-post imposent leurs propres contrôles.
Termes associés
- admin_menu
- admin-ajax.php
- Hook Execution Order
