Domanda

Ho una forma che permette a qualsiasi utente registrato di presentare un post (si tratta di un tipo di messaggio personalizzato - legati forum), e sto usando wp_insert_post() per inserirla nel db.

Da quello che ho visto in questa funzione di una funzione sanitize_post () viene eseguito automaticamente, ma penso che questo solo gestisce DB fuggire e così via.

Quindi, come faccio a disinfettare i dati di input nello stesso modo come l'editor wp-admin fa? Voglio dire applicare il filtro KSES e tutte le altre cose ...

È stato utile?

Soluzione

Quando si crea un post / modificato da admin, edit_post () viene chiamato.

Questa funzione raccoglie semplicemente tutti gli argomenti $ _POST e li passa a wp_update_post ().

wp_update_post () poi fa alcuni controlli più logici e passa i dati insieme a wp_insert_post ().

wp_insert_post () chiama sanitize_post (), che fa tutto il sanificazione pesanti.

Quindi, sì, wp_insert_post () è il modo corretto per farlo.

Altri suggerimenti

Otto ha fatto un blog sull'utilizzo KSES scorso anno, vedere se questo aiuta.
http://ottopress.com/2010/wp-quickie-kses/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top