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

Références officielles

Bouton retour en haut de la page