Ciao a tutti,
ho, prendendo spunto da un tutorial, creato un form di registrazione personalizzato per Wordpress utilizzando questo codice:
Ora ho due problemi:
1) Quando invio la richiesta di registrazione, se è tutto compilato questa va a buon fine e viene fuori il messaggio di registrazione effettuata ma sotto resta il form..come faccio, una volta che la registrazione è andata a buon fine, far sparire il form?
2) Ho provato ad aggiungere questa stringa di codice
alla riga 42, dopo
ma non funziona più il form dopo
Dove sbaglio?
Grazie a tutti
ho, prendendo spunto da un tutorial, creato un form di registrazione personalizzato per Wordpress utilizzando questo codice:
Codice:
<?p
/*
Template Name: Login Page
*/
?>
<? get_header()?>
<div class="wrapper">
<?php
$err = '';
$success = '';
global $wpdb, $PasswordHash, $current_user, $user_ID;
if(isset($_POST['task']) && $_POST['task'] == 'register' ) {
$pwd1 = $wpdb->escape(trim($_POST['pwd1']));
$pwd2 = $wpdb->escape(trim($_POST['pwd2']));
$first_name = $wpdb->escape(trim($_POST['first_name']));
$last_name = $wpdb->escape(trim($_POST['last_name']));
$email = $wpdb->escape(trim($_POST['email']));
$username = $wpdb->escape(trim($_POST['username']));
if( $email == "" || $pwd1 == "" || $pwd2 == "" || $username == "" || $first_name == "" || $last_name == "") {
$err = 'Devi compilare tutti i campi obbligatori';
} else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$err = 'Indirizzo email non valido.';
} else if(email_exists($email) ) {
$err = 'Indirizzo email già registrato.';
} else if($pwd1 <> $pwd2 ){
$err = 'Le password non corrispondono.';
} else {
$user_id = wp_insert_user( array ('first_name' => apply_filters('pre_user_first_name', $first_name), 'last_name' => apply_filters('pre_user_last_name', $last_name), 'user_pass' => apply_filters('pre_user_user_pass', $pwd1), 'user_login' => apply_filters('pre_user_user_login', $username), 'user_email' => apply_filters('pre_user_user_email', $email), 'role' => 'subscriber' ) );
if( is_wp_error($user_id) ) {
$err = 'Errore in fase di registrazione';
} else {
do_action('user_register', $user_id);
$success = 'You\'re successfully register';
}
}
}
?>
<!--display error/success message-->
<div id="message">
<?php
if(! empty($err) ) :
echo '<p class="error">'.$err.'</p>';
endif;
?>
<?php
if(! empty($success) ) :
echo '<p class="error">'.$success.'</p>';
endif;
?>
</div>
<form method="post">
<h3>Don't have an account?<br/> Create one now.</h3>
<p><label>Cognome*</label></p>
<p><input type="text" value="" name="last_name" id="last_name" /></p>
<p><label>Nome*</label></p>
<p><input type="text" value="" name="first_name" id="first_name" /></p>
<p><label>Email*</label></p>
<p><input type="text" value="" name="email" id="email" /></p>
<p><label>Username*</label></p>
<p><input type="text" value="" name="username" id="username" /></p>
<p><label>Password*</label></p>
<p><input type="password" value="" name="pwd1" id="pwd1" /></p>
<p><label>Reinserisci Password*</label></p>
<p><input type="password" value="" name="pwd2" id="pwd2" /></p>
<div class="alignleft"><p><?php if($sucess != "") { echo $sucess; } ?> <?php if($err != "") { echo $err; } ?></p></div>
<div>Compilando il seguente form di registrazione il cliente accetta quanto previsto nel disclaimer</div>
<button type="submit" name="btnregister" class="button" >Registrati</button>
<input type="hidden" name="task" value="register" />
</form>
</div>
<div></div>
<?php get_footer() ?>
Ora ho due problemi:
1) Quando invio la richiesta di registrazione, se è tutto compilato questa va a buon fine e viene fuori il messaggio di registrazione effettuata ma sotto resta il form..come faccio, una volta che la registrazione è andata a buon fine, far sparire il form?
2) Ho provato ad aggiungere questa stringa di codice
Codice:
// e inviamo una mail con la riuscita registazione
email ($email, "Registrazione OK", "Complimenti registrazione effettuata con successo", "From: miamail@miohosto.it");
alla riga 42, dopo
Codice:
} else {
do_action('user_register', $user_id);
ma non funziona più il form dopo
Dove sbaglio?
Grazie a tutti