Wordpress: personalizzare il template dei commenti di TwentyEleven

Short link

Se, come me, state utilizzando il tema TwentyEleven di Wordpress avrete sicuramente notato che il template dei commenti è in lingua inglese. Per poterlo personalizzare dobbiamo utilizzare la funzione di Wordpress comment_form(). Vediamo come.

Aprite il file comments.php e individuate la seguente riga di codice:


<?php comment_form();?>

Sostituitela con il seguente codice (che ovviamente potete personalizzare) stando bene attenti a non lasciare spazi bianchi in eccesso tra i tag PHP di apertura e di chiusura:


<?php
$newargs = array(
	'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( 'Commento', 'noun' ) . '</label><textarea id="comment" name="comment" cols="45" rows="8" 						aria-required="true"></textarea></p>',
	'must_log_in' => '<p class="must-log-in">' .  sprintf( __( 'Devi aver effettuato il <a href="%s">log in</a> per inserire un commento' ), 					wp_login_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>',
	'logged_in_as' => '<p class="logged-in-as">' . sprintf( __( 'Hai effettuato il login come <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out">Log out?</a>' ), admin_url( 'profile.php' ), $user_identity, wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>',
	'comment_notes_before' => '<p class="comment-notes">' . __( 'La tua e-mail non sarà pubblicata.' ) . ( $req ? $required_text : '' ) . '</p>',
	'comment_notes_after' => '<p class="form-allowed-tags">' . sprintf( __( 'Puoi usare i seguenti tag e attributi <abbr title="HyperText Markup Language">HTML</abbr>: %s' ), ' <code>' . allowed_tags() . '</code>' ) . '</p>',
	'title_reply' => __( 'Commenta' ),
	'title_reply_to' => __('Commenta a %s'),
	'cancel_reply_link' => __('Annulla commento'),
	'label_submit' => __('Inserisci commento'),
      'fields' => array(
	'author' => '<p class="comment-form-author">' . '<label for="author">' . __( 'Nome' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
	            '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>',
	'email'  => '<p class="comment-form-email"><label for="email">' . __( 'E-mail' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
	            '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></p>',
	'url'    => '<p class="comment-form-url"><label for="url">' . __( 'Sito web' ) . '</label>' .
	            '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></p>'
       )
); 
comment_form($newargs); ?>

Se volete cambiare il testo delle etichette dei campi o dei messaggi, è sufficiente che sostituiate le stringhe in italiano che vedete all'interno del codice di cui sopra.

L'autore

Gabriele Romanato, sviluppatore web full stack specializzato in siti, applicativi web ed e-commerce con Node.js e PHP.