Dois-je utiliser is_email()
pour valider un champ de courrier électronique? Dans WP. J'ai mis le champ email dans un widget. J'apprécierais volontiers de l'aide.
function update($new_instance, $old_instance) {
$instance = $old_instance;
$instance['email'] = is_email($new_instance['email']);
return $instance;
}
Et
<p>
<label for="<?php echo $this->get_field_id('email'); ?>">
<?php _e('Email'); ?> </label>
<input class="widefat" id="<?php echo $this->get_field_id('email'); ?>" name="<?php echo $this->get_field_name('email'); ?>" type="email" value="<?php echo $email; ?> " />
</p>
<?php
}
Utiliser is_email()
est-il correct pour cela? Je vous remercie!
Selon la documentation, is_email () est utilisé pour valider un email et le renvoie s'il est valide ou faux s'il ne l'est pas. Alors utilisez-le correctement.
La seule chose que je peux voir dans votre code, c'est que si l'email n'est pas valide, vous configurez les données avec une valeur booléenne FALSE.
$instance['email'] = is_email($new_instance['email']);
//with a bad email address, this will be the same as writing
$instance['email'] = false;
Selon ce que vous faites dans le widget, cela peut vous donner des résultats inattendus.
Je voudrais plutôt faire quelque chose comme ce qui suit
$instance['email'] = ( is_email($new_instance['email']) ) ? $new_instance['email'] : '';
Cela vous assurera que si l'appel is_email () renvoie false, vous définissez $ instance ['email'] sur une chaîne vide au lieu d'une valeur booléenne.
J'espère que cela t'aides!