web-dev-qa-db-fra.com

wp_kses vs wp_strip_all_tags

En plus de fournir un contrôle granulaire pour les balises HTML autorisées, wp_kses offre-t-il des avantages supplémentaires par rapport à wp_strip_all_tags? Essentiellement, si je devais utiliser wp_kses et le définir sur not pour autoriser le langage HTML ou les protocoles, y aurait-il un avantage à utiliser simplement wp_strip_all_tags?

5
John

Je n'appellerais pas cela un avantage ou un inconvénient, mais plutôt une différence: wp_strip_all_tags supprime simplement toutes les balises (à l'exception des balises autorisées) mais ne supprime pas leur contenu en appelant la fonction PHP strip_tags , après suppression complète des balises script et style, y compris leur contenu . wp_kses ne fait rien de tel:

// Returns 'alert( "test" )' (content of script tag)
wp_kses( '<script>alert( "test" );</script>', array() );

// Returns '' (empty string)
wp_strip_all_tags( '<script>alert( "test" );</script>' );

Ainsi, si vous utilisiez wp_kses et que vous le définissiez pour ne permettre aucun code HTML, il serait différent de wp_strip_all_tags en ce sens qu'il ne supprimerait pas le contenu des balises script et style.

3
engelen