vendredi 25 septembre 2026

À propos

Contact

Headless & API

Arguments et schéma des routes REST : validate_callback et sanitize_callback

Déclarer proprement les arguments d'une route REST évite la moitié des bugs de validation. Tour d'horizon du schéma JSON et de ses callbacks.

Par Clément Hadrot • 15 avril 2020 • 1 min de lecture • Aucun commentaire
Arguments et schéma des routes REST : validate_callback et sanitize_callback

La première route REST personnalisée que j’ai écrite validait ses arguments « à la main », avec une série de if au début du callback. Ça fonctionnait, mais chaque erreur retournait un message différent, parfois un code HTTP incohérent, et le code devenait vite illisible dès que la route acceptait plus de deux paramètres. Le tableau args de register_rest_route() existe justement pour éviter ça : il externalise la validation et le nettoyage, avant même que le callback principal ne soit appelé.

Cet article détaille comment déclarer des arguments avec un schéma JSON, la différence entre validate_callback et sanitize_callback, et les pièges que j’ai rencontrés en les combinant sur des routes réelles.

Déclarer un argument avec son schéma

Chaque entrée du tableau args décrit un paramètre attendu par la route, sous forme d’un sous-ensemble de JSON Schema : type, required, default, enum, minimum/maximum pour les nombres, et les deux callbacks qui nous intéressent ici.

L'essentiel à retenir : Chaque argument déclare son type, sa validation et son nettoyage ; validate_callback rejette, sanitize_callback transforme ; Erreurs 400 automatiques et cohérentes

Partager :

À propos de l'auteur

Clément Hadrot

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi