do_settings_sections()

Définition : do_settings_sections() affiche les sections de réglages WordPress enregistrées pour une page donnée. Elle appelle leurs callbacks et produit les champs associés, à leur emplacement prévu dans un formulaire administratif.

Terminologie

Terme officiel : do_settings_sections()

Autres appellations : Affichage des sections

À quoi cela sert

Cette fonction rend l’interface déclarée par add_settings_section() et add_settings_field(). Elle évite de réécrire à la main l’ensemble des titres et tableaux de champs après leur enregistrement.

Comment cela fonctionne

Le paramètre de page doit correspondre à la valeur utilisée lors de la déclaration des sections et champs. La fonction imprime directement son rendu ; elle n’enregistre pas les options et ne crée pas le formulaire principal.

Dans quel contexte l’utiliser

À utiliser dans la partie visible d’un écran de paramètres, à l’intérieur d’un formulaire complet muni des champs cachés nécessaires.

Exemple concret

Un plugin regroupe les options d’apparence et les affiche sous sa propre page de réglages.

Exemple de code commenté

<?php
// Dans le callback d’une page déjà enregistrée.
if ( current_user_can( 'manage_options' ) ) {
    echo '<div class="wrap"><h1>Configuration</h1>';
    echo '<form action="options.php" method="post">';
    settings_fields( 'atoolpha_demo' );
    do_settings_sections( 'atoolpha-demo-page' );
    submit_button();
    echo '</form></div>';
}
// Le même slug est utilisé lors de add_settings_section().

Explication pas à pas de l’exemple

Le slug atoolpha-demo-page détermine quelles sections et quels champs seront imprimés. settings_fields() injecte les éléments de contrôle du groupe ; les fonctions de déclaration doivent être appelées à admin_init.

Résultat attendu

Les réglages de la page apparaissent par section lorsque celles-ci ont été correctement déclarées.

Précautions et limites

Cette fonction affiche du HTML ; ne pas l’utiliser pour lire une option ni l’appeler sans vérifier l’accès à la page. Elle n’exonère pas d’échapper les valeurs dans chaque champ.

À ne pas confondre

do_settings_sections() rend les sections, tandis que settings_fields() génère les champs hidden d’un formulaire Settings API.

Termes associés

  • add_settings_section()
  • add_settings_field()
  • settings_fields()

Références officielles

Bouton retour en haut de la page