Modifier le formulaire des commentaires

Comment modifier le formulaire des commentaires de WordPress pour y ajouter un ou plusieurs champs.

Ecrit le 8 juin 2011
1 commentaire

Pour diverses raisons, il peut être utile d’ajouter des champs au formulaire de commentaires. Je vous propose de voir comment réaliser cela.

En guise de prérequis, il vous faut un minimum de connaissance en PHP / CSS / HTML, sans cela, vous risquez de vous retrouvez dans un jolie petite galère. Ensuite, il est fortement recommandé de créer une copie de sauvegarde de vos fichiers.

Les modifications suivantes sont à apporter dans votre fichier functions.php. Ne vous aventurez jamais à modifier les fichiers du Core de WordPress, d’une part, ce n’est pas l’idéal en terme de maintenance, et d’autre part, vos modifications seraient perdues à la première mise à jour de votre installation, ce qui serait dommage.

Pour commencer, il vous faut filtrer la fonction comment_form_default

add_filter( 'comment_form_defaults', 'change_comment_form_defaults');

Ensuite, vous pouvez ajouter le ou les champs que vous souhaitez ajouter à votre formulaire

function change_comment_form_defaults( $default ) {
$commenter = wp_get_current_commenter();
$default[ 'fields' ][ 'email' ] .= '<p>' .
'<label for="city">'. __('City') . '</label>
<span>*</span>
<input id="city" name="city" size="30" type="text" /></p>';
return $default;
}

Ici, c’est un champ « City » qui est ajouté au formulaire.

Pour que les données de votre champ soit enregistrées en même temps que les autres champs du formulaire, vous devez ajouter ces lignes de codes

add_action( 'comment_post', 'save_comment_meta_data' );
 function save_comment_meta_data( $comment_id ) {
 add_comment_meta( $comment_id, 'city', $_POST[ 'city' ] );
 }

Et si vous souhaitez rendre le champ obligatoire, voici comment faire

add_filter( 'preprocess_comment', 'verify_comment_meta_data' );
 function verify_comment_meta_data( $commentdata ) {
 if ( ! isset( $_POST['city'] ) )
 wp_die( __( 'Error: please fill the required field (city).' ) );
 return $commentdata;
 }

Pour en savoir plus, je vous invite à lire l’article source sur WPEngineer

Vous pouvez également lire cet excellent article chez Otto

Pour les moteurs, ça parle de :

  • modifier commentaire wordpress
  • formulaire commentaire wordpress
  • modifier texte commentaires wordpress
  • formulaire de commentaire wordpress
  • php formulaire ajout champs
  • parametrer le formulaire commentaire wordpress
  • où personnaliser les commentaires wordpress
  • modifier textes commentaires wordpress
  • modifier texte dans commentaire wordpress
  • wordpress changer champs des commentaires

Et vous ?

Participez à l'aventure WordPress, et dites nous ce que vous pensez de ce CMS
Vous pouvez aussi nous dire pourquoi vous bloguez, d'où vous vient votre passion

Tout pour WordPress

Liens sponsorisés

Be Different

Relevanssi - Search everything!