Volete modificare la tradizionale form di registrazione di Wordpress per ottenere altri dati dai vostri visitatori?. Ecco il procedimento:
Modificare il file wp-register.php in questo modo:
<p><label for="first_name"><?php _e('Nome:') ?></label><br /> <input type="text" name="user_firstname" id="user_login" size="20" maxlength="100" value="<?php echo wp_specialchars($new_user_firstname); ?>" /></p>
<p><label for="last_name"><?php _e('Cognome:') ?></label><br /> <input type="text" name="user_lastname" id="user_login" size="20" maxlength="100" value="<?php echo wp_specialchars($new_user_lastname); ?>" /></p>
case 'register':
$user_login = sanitize_user( $_POST['user_login'] );
$user_email = $_POST['user_email'];
$new_user_firstname = $_POST['user_firstname'];
$new_user_lastname = $_POST['user_lastname'];
$user_id = wp_create_user( $user_login, $password, $user_email );
if ( !$user_id )
$errors['user_id'] = sprintf(__('<strong>ERROR</strong>: Couldn’t register you... please contact the <a href="mailto:%s">webmaster</a> !'), get_settings('admin_email'));else
update_usermeta( $user_id, 'first_name', $new_user_firstname);
update_usermeta( $user_id, 'last_name', $new_user_lastname);
wp_new_user_notification($user_id, $password);
[1]In pratica ho aggiunto un update subito dopo la creazione dell'utente.
Ecco come apparirà la form di registrazione dopo le modifiche. Per inserire nuovi campi utente oltre a quelli già presenti (ad esempio il numero di telefono) consiglio di utilizzare l'ottimo plugin di Andrew Ferguson [2]. Scaricate il file e attivate il plugin dal pannello di amministrazione: create manualmente nel database (potete usare l'interfaccia intuitiva di PhpMyadmin) il nuovo campo nella tabella Wp-Users (ad esempio "numtel") e modificate quindi la prima parte del file fergcorp_addToUser.php specificando alcuni parametri del nuovo campo che andrà inserito nel profilo utente
$fergcorp_addField = array(
array( "legend"=>"Telefono",
"description"=>"Inserisci il tuo numero di telefono",
"label"=>"Telefono",
"inputName"=>"numtel",
"inputType"=>"text",)
);
Spero possa esservi d'aiuto, alla prossima!
Links:
[1] http://www.signalkuppe.com/wp-content/foto/wordpress/wordpress1.jpg
[2] http://www.andrewferguson.net/2006/05/16/add-data-to-user-field-in-wordpress