Paramètre

$text(string)requis

Texte à échapper.

Description / Informations supplémentaires

Encodes les caractères <, >, &, ” and ‘.

Il est fortement conseillé d'échapper les valeurs destinées aux attributs HTML tels que alt, value, title, etc. Pour échapper une valeur d'une translation on peut utiliser la fonction d'échappement esc_attr__(); pour échapper, traduire et afficher, on peut utiliser esc_attr_e().

Retourne

(string) Texte échappé.

Déclaration et structure de la fonction esc_attr()

function esc_attr( $text ) {
    $safe_text = wp_check_invalid_utf8( $text );
    $safe_text = _wp_specialchars( $safe_text, ENT_QUOTES );
    /**
     * Filters a string cleaned and escaped for output in an HTML attribute.
     *
     * Text passed to esc_attr() is stripped of invalid or special characters
     * before output.
     *
     * @since 2.0.6
     *
     * @param string $safe_text The text after it has been escaped.
     * @param string $text      The text prior to being escaped.
     */
    return apply_filters( 'attribute_escape', $safe_text, $text );
}
wp_check_invalid_utf8()

Vérifie si les caractères d'une chaîne sont bien au format UTF-8.

_wp_specialchars()

Convertie certains caractères spéciaux en entités HTML.

apply_filters()

Appel les fonctions qui ont été attaché à un filtre (hook).

attribute_escape

Filtre une chaîne nettoyée et échappée pour un attribut HTML.

Où est utilisée la fonction esc_attr() dans le CMS WordPress

Exemple

$fname = ( isset( $_POST['fname'] ) ) ? $_POST['fname'] : '';
echo '<input type="text" name="fname" value="'.esc_attr( $fname ).'">';

Sources

Codex WordPress : esc_attr()

Autres fonctions dans le même fichier : wp-includes/formatting.php

Retour