add_settings_error()
add_settings_error() enregistre un message d’erreur ou d’information pour une option administrable. Cette notion intervient dans Administration, écrans et messages et nécessite de distinguer les données traitées des effets réellement produits par WordPress.
Comprendre le mécanisme
À quoi cela sert ?
add_settings_error() enregistre un message d’erreur ou d’information pour une option administrable. Dans un projet ATOOLPHA, le besoin illustré est de signaler qu’une URL de fournisseur est incorrecte lors d’une sauvegarde. Le mécanisme répond à une responsabilité précise : identifier les entrées nécessaires, les paramètres contrôlables et la sortie qu’une autre partie du site utilisera. Cette distinction aide à sélectionner la bonne API plutôt qu’à reproduire une manipulation directe du stockage.
Fonctionnement interne
L’administration WordPress est constituée d’écrans identifiés, de hooks de chargement, d’options et de composants d’interface. La Settings API sait présenter certaines notifications de validation; les objets WP_Screen apportent des informations de contexte. Les tables internes ne garantissent pas toutes une API publique stable. Pour « add_settings_error() », la responsabilité particulière consiste à enregistre un message d’erreur ou d’information pour une option administrable. La séquence doit être pensée avant l’appel : vérifier les entrées, déterminer le bon cycle d’exécution, exécuter l’opération, puis interpréter la valeur de retour ou la modification observable. Cette procédure n’est pas identique à un simple rendu HTML.
Contexte d’utilisation professionnelle
Cas concret : Signaler qu’une URL de fournisseur est incorrecte lors d’une sauvegarde. L’auteur de l’extension doit définir quelle ressource est visée, pourquoi elle est autorisée, si la réponse sera affichée ou conservée, et ce qui se produit si la ressource n’existe plus. Tester un cas nominal et un cas d’échec fait partie de l’intégration.
Exemple technique et préconditions
Extrait PHP à placer dans une fonction, une action ou une procédure administrateur déjà autorisée, après initialisation de WordPress. Contrôler current_user_can avant de fournir une action, utiliser les nonces pour les formulaires et vérifier le hook exact de l’écran. Un message de succès ne remplace pas la vérification d’un enregistrement.
// Contexte : signaler qu’une URL de fournisseur est incorrecte lors d’une sauvegarde.
// Précondition critique : attacher le message au bon réglage et ne pas afficher de secrets.
// Fragment à adapter : les identifiants et variables sont illustratifs.
add_settings_error( 'atoolpha_api', 'invalid_url', 'Adresse incorrecte', 'error' );
Décryptage de l’exemple
Le fragment illustre précisément le point d’entrée « add_settings_error() » pour signaler qu’une URL de fournisseur est incorrecte lors d’une sauvegarde. Il faut adapter les arguments à des objets réels, gérer les valeurs d’erreur et relier l’appel au hook ou au formulaire pertinent. Il ne représente ni une extension WordPress complète, ni une autorisation implicite d’exécuter une écriture sur un site public.
Résultat attendu
Dans un environnement correctement préparé, l’effet recherché est de signaler qu’une URL de fournisseur est incorrecte lors d’une sauvegarde. Le résultat précis dépend des données présentes et des options effectives du site. Il n’a pas été mesuré sur ATOOLPHA : il doit être constaté dans l’administration ou le journal de test selon le mécanisme.
Mise en pratique et vérification
Atelier conseillé : 1) isoler un échantillon de test correspondant à « add_settings_error() » ; 2) documenter la valeur de départ ou le résultat attendu ; 3) reproduire l’exemple après avoir renseigné ses variables ; 4) contrôler le résultat et les éventuels retours d’erreur ; 5) répéter avec une donnée manquante. Vérification spécifique : attacher le message au bon réglage et ne pas afficher de secrets.
Erreurs fréquentes et sécurité
Point sensible : attacher le message au bon réglage et ne pas afficher de secrets. Contrôler current_user_can avant de fournir une action, utiliser les nonces pour les formulaires et vérifier le hook exact de l’écran. Un message de succès ne remplace pas la vérification d’un enregistrement. Un résultat apparemment correct avec un compte administrateur ne garantit ni la sécurité ni l’exactitude pour les autres utilisateurs. Prévoir un comportement de repli si l’API renvoie une erreur ou si la ressource attendue est absente.
Diagnostic avancé
Tester l’écran avec un administrateur et un rôle non autorisé, enregistrer une valeur volontairement invalide, observer l’affichage des messages puis vérifier la navigation au clavier. Lorsqu’un résultat est inattendu, contrôler d’abord la version WordPress, les paramètres, la présence des données, le statut de permission et le contexte exact de l’appel. Pour « add_settings_error() », ne pas perdre de vue : attacher le message au bon réglage et ne pas afficher de secrets.
À ne pas confondre
Ne pas confondre un message visible, un état de validation et un changement réellement enregistré dans les options WordPress. Ce terme doit être relié aux fiches générales du domaine « Administration, écrans et messages », ainsi qu’aux pages décrivant ses éventuelles alternatives et ses dépendances.
Architecture et maintenance
Pour une intégration durable, conserver une fonction métier qui décrit le besoin (signaler qu’une URL de fournisseur est incorrecte lors d’une sauvegarde) et lui déléguer l’appel WordPress. Prévoir la désactivation, les erreurs et les différences entre développement et production. Le code de démonstration ne doit pas être copié tel quel en production lorsqu’il touche aux données privées, à l’authentification, à des fichiers ou à des opérations de suppression.
