Mirando el Codex para wp_insert_post () , establece que esta función "... desinfecta las variables, realiza algunas comprobaciones, completa las variables faltantes como fecha / hora, etc." (EDITAR: Actualicé la entrada del Codex para incluir un ejemplo más robusto que incluye seguridad, así como meta meta y asignación de categoría)
Solo me pregunto si necesito hacer más desinfección para evitar hacks XSS y similares o si se está haciendo lo suficiente a través de la función.
Para ser honesto, he revisado la función en core y no he encontrado ningún wp_kses () u otra desinfección en post_content, por ejemplo, así que estoy un poco preocupado. Todo lo que puedo ver que hace es stripslashes_deep () en los datos.
Entonces, ¿debo ejecutar wp_kses () o cualquier otra cosa cuando construyo mis argumentos para wp_insert_post ()?
¿Cuál es la mejor práctica aquí? El Codex es bastante arrogante sobre la seguridad en su ejemplo.
Gracias
fuente
<script>
dentro?Respuestas:
No tienes que hacer nada.
En carga WP:
'init' hook -> kses_init() -> kses_init_filters()
Luego:
wp_insert_post() -> sanitize_post() -> sanitize_post_field() -> 'content_save_pre' -> wp_filter_post_kses()
Del mismo modo para títulos de publicaciones, textos de comentarios, etc.
Conclusión: wp_insert_post () está muy desinfectado. :)
fuente