Adaugă Câmp Personalizat pentru Comentarii
Am căutat multe discuții despre problema mea, dar din păcate nu am găsit nimic care să funcționeze, și aceasta este ultima mea opțiune. Vreau să adaug câteva câmpuri personalizate în formularul meu de comentarii. Cum pot face acest lucru?

Iată: Adăugarea câmpurilor personalizate în formularele de comentarii WordPress?
Și un alt articol excelent pe această temă: http://wpengineer.com/2214/adding-input-fields-to-the-comment-form/
Există funcții disponibile pentru a adăuga/actualiza, șterge meta datele comentariilor, similar cu meta datele articolelor și utilizatorilor.
Editare:
Iată un exemplu pentru a începe (introduceți codul în functions.php
sau într-un plugin personalizat):
Adăugarea câmpurilor în formularul de comentarii:
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">'. __('Oraș') . '</label>
<span class="required">*</span>
<input id="city" name="city" size="30" type="text" /></p>';
return $default;
}
4 funcții pentru a prelua/adauga/actualiza/șterge meta datele comentariilor:
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 );
Aici ați face validările:
add_filter( 'preprocess_comment', 'verify_comment_meta_data' );
function verify_comment_meta_data( $commentdata ) {
if ( ! isset( $_POST['city'] ) )
wp_die( __( 'Eroare: vă rugăm să completați câmpul obligatoriu (oraș).' ) );
return $commentdata;
}
Și salvarea meta datelor comentariilor:
add_action( 'comment_post', 'save_comment_meta_data' );
function save_comment_meta_data( $comment_id ) {
add_comment_meta( $comment_id, 'city', $_POST[ 'city' ] );
}
Preluarea și afișarea meta datelor comentariilor:
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;
}
(Notă: Tot codul este din linkul WPengineer pe care l-am postat mai sus. Există mai multe detalii și utilizări avansate în acel articol, vă rugăm să le consultați de asemenea!)

Această prezentare de la Beau Lebens ar trebui să vă arate cum: Cum să conectați la Comentarii
Iar acest articol de blog de la Otto ar trebui să vă arate mai multe: Sfat pentru temele WordPress 3.0: Formularul de Comentarii
Există și un plugin de bază disponibil aici numit "Wordpress Plugin: Câmpuri Adiționale pentru Comentarii" (îmi pare rău, nu pot posta link-ul).

Linkurile pot fi șterse. Te rugăm să îmbunătățești răspunsul tău cu o parte din conținutul găsit pe linkuri. Cel mai bine ar fi să adaugi un exemplu.
