WordPress : Puis-je utiliser la même fonction de nettoyage sur plusieurs zones de texte de mod de thème ?
J’ai un mod de thème avec plusieurs options et j’ajoute actuellement des options de désinfection à ces choix. C’est mon code que j’utilise:
$wp_customize->add_section( 'twsa_feed' , array(
'title' => __( 'RSS Feed settings','rss_feed'),
'priority' => 30,
'description' => 'Your RSS feed settings',
) );
$wp_customize->add_setting( 'short-show-name' );
$wp_customize->add_control( 'short-show-name', array (
'label' => 'Show name',
'description' => 'Abbreviated show name, not the full name',
'section' => 'twsa_feed',
'type' => 'textbox',
'sanitize_callback' => 'twsa_sanitize_text',
));
$wp_customize->add_setting( 'show-category' );
$wp_customize->add_control( 'show-category', array (
'label' => 'Category',
'description' => 'What category does your show belong to? (not really important to stick to certain categories, can make one up)',
'section' => 'twsa_feed',
'type' => 'textbox',
'sanitize_callback' => 'twsa_sanitize_text',
));
$wp_customize->add_setting( 'author-name' );
$wp_customize->add_control( 'author-name', array (
'label' => 'Author name',
'description' => 'Must be a name',
'section' => 'twsa_feed',
'type' => 'textbox',
'sanitize_callback' => 'twsa_sanitize_text',
));
$wp_customize->add_setting( 'author-email' );
$wp_customize->add_control( 'author-email', array (
'label' => 'Author e-mail',
'description' => 'e-mail address',
'section' => 'twsa_feed',
'type' => 'textbox',
'sanitize_callback' => 'twsa_sanitize_text',
));
$wp_customize->add_setting( 'itunes-subtitle' );
$wp_customize->add_control( 'itunes-subtitle', array (
'label' => 'iTunes subtitle',
'description' => 'Short description of show',
'section' => 'twsa_feed',
'type' => 'textbox',
'sanitize_callback' => 'twsa_sanitize_text',
));
Voici la fonction que j’utilise pour assainir les données :
function twsa_sanitize_text( $input ) {
return wp_kses_post( force_balance_tags( $input ) );
};
Est-il acceptable d’utiliser une fonction pour nettoyer plusieurs champs de texte ou dois-je créer une fonction pour chaque champ de texte ?
Merci
Solution n°1 trouvée
Comme je peux le voir, vos entrées sont toutes les mêmes (zone de texte) et renvoient très probablement le même type de données (un texte lisible par l’homme), donc je ne pense pas que vous ayez besoin de fonctions différentes.
On fera tout, sauf si vous avez des cases à cocher, des boutons radio, une entrée HTML, etc. qui pourraient nécessiter différents types d’assainissement (comme autoriser certaines balises HTML spéciales).
0 commentaire