Envoi de messages de l'extrémité avant - données désinfectantes
-
16-10-2019 - |
Question
J'ai une forme qui permet à tout utilisateur enregistré de soumettre un poste (c'est un type de poste personnalisé - forum lié), et j'utilise wp_insert_post()
pour l'insérer dans la db.
D'après ce que j'ai vu dans cette fonction une fonction sanitize_post () est exécuté automatiquement, mais je pense que cela ne poignées db échapper et tel.
Alors, comment puis-je Désinfectez les données d'entrée de la même façon que l'éditeur wp-admin fait? Je veux dire appliquer le filtre kses et tous les autres trucs ...
La solution
Quand un poste est créé / modifié depuis l'admin, edit_post () est appelée.
Cette fonction recueille simplement tous les arguments $ _POST et les transmet à wp_update_post ().
wp_update_post () fait ensuite certaines vérifications logiques et transmet les données le long de wp_insert_post ().
wp_insert_post () appelle sanitize_post (), qui fait tout le droit lourd aseptisation.
Alors, oui, wp_insert_post () la bonne façon de le faire.
Autres conseils
Otto a fait un blog sur l'utilisation kses l'an dernier, voir si cela aide.
http://ottopress.com/2010/wp-quickie-kses/