Paramètres

$class(string)requis

La classe à nettoyer.

$fallback(string)optionnel

La valeur à retourner si le nettoyage retourne une chaîne vide.

Valeur par défaut : ''

Retourne

(string) La valeur nettoyée.

Déclaration et structure de la fonction sanitize_html_class()

function sanitize_html_class( $classname, $fallback = '' ) {
    // Strip out any percent-encoded characters.
    $sanitized = preg_replace( '|%[a-fA-F0-9][a-fA-F0-9]|', '', $classname );

    // Limit to A-Z, a-z, 0-9, '_', '-'.
    $sanitized = preg_replace( '/[^A-Za-z0-9_-]/', '', $sanitized );

    if ( '' === $sanitized && $fallback ) {
        return sanitize_html_class( $fallback );
    }
    /**
     * Filters a sanitized HTML class string.
     *
     * @since 2.8.0
     *
     * @param string $sanitized The sanitized HTML class.
     * @param string $classname HTML class before sanitization.
     * @param string $fallback  The fallback string.
     */
    return apply_filters( 'sanitize_html_class', $sanitized, $classname, $fallback );
}
sanitize_html_class()

Nettoie une classe css pour s'assurer que les caractères soient valides pour l'attribut class en HTML.

apply_filters()

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

sanitize_html_class

Filtre la chaîne nettoyée pour une class HTML.

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

Exemples

Pour styliser un poste particulier :
$post_class = sanitize_html_class( $post->post_title );
echo '<div class="' . $post_class . '">';
Fonction personnalisée pour nettoyer un tableau de classes css :
function sanitize_html_classes_personnalisee($classes, $sep = " "){
    $return = "";
 
    if(!is_array($classes)) {
        $classes = explode($sep, $classes);
     }
 
     if(!empty($classes)){
        foreach($classes as $class){
            $return .= sanitize_html_class($class) . " ";
        }
    }
 
    return $return;
}

Sources

Codex WordPress : sanitize_html_class()

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

Retour