Je veux ajouter un champ aux commentaires et avoir utilisé ces codes.
functions.php
function my_fields($fields) {
$fields['url2'] = '<p class="comment-form-url2">
<label for="url2">URL hittad på webben</label>
<input id="url2" name="url2" type="text" value="" size="30" />
</p>';
return $fields;
}
add_filter('comment_form_default_fields','my_fields');
comments.php
comment_form();
Des questions
Il y a quelques autres crochets dans le formulaire de commentaire que vous pouvez utiliser. L’accès ne s’affiche que si l’utilisateur n’est pas connecté. Si vous souhaitez utiliser ce champ pour tous les utilisateurs (connectés ou non), vous devez ajouter votre formulaire en accrochant à la fois comment_form_after_fields
et comment_form_logged_in_after
, actions, et faire écho sur le nouveau champ.
<?php
add_action( 'comment_form_logged_in_after', 'pmg_comment_tut_fields' );
add_action( 'comment_form_after_fields', 'pmg_comment_tut_fields' );
function pmg_comment_tut_fields()
{
?>
<p class="comment-form-title">
<label for="pmg_comment_title"><?php _e( 'Title' ); ?></label>
<input type="text" name="pmg_comment_title" id="pmg_comment_title" />
</p>
<?php
}
Découvrez ce tutoriel j'ai écrit (l'exemple ci-dessus en est tiré). Couvre tout, de l'ajout de champs à la sauvegarde des données, en passant par l'ajout d'une méta-boîte afin que vous puissiez également éditer les champs supplémentaires au dos.
Pour enregistrer votre champ supplémentaire, vous devez faire:
function save_comment_meta_data( $comment_id ) {
add_comment_meta( $comment_id, 'extra_field', $_POST[ 'extra_field' ] );
}
add_action( 'comment_post', 'save_comment_meta_data' );
Voir ce didacticiel de Nice couvrant les champs supplémentaires dans les formulaires de commentaires.
Jetez un coup d'oeil à ce plugin http://www.solaceten.info
(divulgation: je suis le co-auteur. Le plugin est gratuit, mais n'est plus maintenu)