Aggiungere un Campo Personalizzato ai Commenti
Ho cercato molte discussioni riguardo il mio problema, ma sfortunatamente non ho trovato nulla che funzionasse, e questa è la mia ultima opzione. Voglio aggiungere alcuni campi personalizzati al mio modulo dei commenti. Come posso farlo?

Ecco qui: Aggiungere campi personalizzati ai form dei commenti di WordPress?
E un altro fantastico post sull'argomento: http://wpengineer.com/2214/adding-input-fields-to-the-comment-form/
Sono disponibili funzioni per aggiungere/aggiornare, eliminare i meta dei commenti, simili ai meta dei post e degli utenti.
Modifica:
Ecco un esempio per iniziare (inserisci il codice nel functions.php
o in un plugin personalizzato):
Aggiungere i campi al form dei commenti:
add_filter( 'comment_form_defaults', 'change_comment_form_defaults');
function change_comment_form_defaults( $default ) {
$commenter = wp_get_current_commenter();
$default[ 'fields' ][ 'email' ] .= '<p class="comment-form-author">' .
'<label for="city">'. __('Città') . '</label>
<span class="required">*</span>
<input id="city" name="city" size="30" type="text" /></p>';
return $default;
}
4 funzioni per recuperare/aggiungere/aggiornare/eliminare i meta dei commenti:
get_comment_meta( $comment_id, $meta_key, $single = false );
add_comment_meta($comment_id, $meta_key, $meta_value, $unique = false );
update_comment_meta($comment_id, $meta_key, $meta_value, $unique = false );
delete_comment_meta( $comment_id, $meta_key, $single = false );
Qui è dove si possono fare le validazioni:
add_filter( 'preprocess_comment', 'verify_comment_meta_data' );
function verify_comment_meta_data( $commentdata ) {
if ( ! isset( $_POST['city'] ) )
wp_die( __( 'Errore: per favore compila il campo obbligatorio (città).' ) );
return $commentdata;
}
E salvare i meta del commento:
add_action( 'comment_post', 'save_comment_meta_data' );
function save_comment_meta_data( $comment_id ) {
add_comment_meta( $comment_id, 'city', $_POST[ 'city' ] );
}
Recuperare e visualizzare i meta dei commenti:
add_filter( 'get_comment_author_link', 'attach_city_to_author' );
function attach_city_to_author( $author ) {
$city = get_comment_meta( get_comment_ID(), 'city', true );
if ( $city )
$author .= " ($city)";
return $author;
}
(Nota: Tutto il codice proviene dal link di WPengineer che ho postato sopra. Ci sono molti più dettagli e usi avanzati in quel post, dai un'occhiata anche a quelli!)

Questa presentazione di Beau Lebens dovrebbe mostrarti come fare: Hooking into Comments
E questo articolo del blog di Otto dovrebbe mostrarti di più: WordPress 3.0 Theme Tip: The Comment Form
È disponibile anche un plugin base qui chiamato "Wordpress Plugin: Extra Comment Fields" (mi dispiace non posso postare il link).

I link possono essere eliminati. Per favore, migliora la tua risposta con parte del contenuto che hai trovato sui link. Sarebbe meglio aggiungere un esempio.
