Adăugare câmp în formularul de înregistrare WordPress
Cum pot adăuga un câmp în formularul de înregistrare WordPress? De exemplu, vreau să adaug câmpul "Prenume" din profilul utilizatorilor în formularul de înregistrare, dar nu reușesc să îmi dau seama cum să fac asta.
Numele câmpului este first_name, dar adăugarea <input type="text" name="first_name" id="first_name" value="<?php echo $_POST['first_name']; ?>" required="required" placeholder="<?php _e('Prenume'); ?>" />
nu funcționează din anumite motive. Formularul se trimite corect, dar câmpul "Prenume" nu este completat în backend în profilul utilizatorului.
Editez acest plugin pentru a modifica formularul de înregistrare: http://wordpress.org/extend/plugins/s8-custom-login-and-registration/

Nu știu despre plugin-ul pe care îl folosești, dar modalitatea de a adăuga câmpuri personalizate la formularul de înregistrare și salvarea lor în profilul utilizatorului este prin conectarea la acțiunea register_form
pentru a afișa câmpul și apoi folosirea filtrului/acțiunii corespunzătoare pentru actualizarea/salvarea profilului utilizatorului.
În cazul tău, de exemplu:
<?php
// afișează câmpul formularului
add_action('register_form', 'ad_register_fields');
function ad_register_fields() {
?>
<p>
<label for="firstname"><?php _e('Prenume') ?><br />
<input type="firstname" name="firstname" id="firstname" class="input" value="<?php echo esc_attr($_POST['firstname']); ?>" size="25" tabindex="20" />
</label>
</p>
<?php
}
// salvează noul prenume
add_filter('pre_user_first_name', 'ad_user_firstname');
function ad_user_firstname($firstname) {
if (isset($_POST['firstname'])) {
$firstname = $_POST['firstname'];
}
return $firstname;
}
?>

Deci asta ar adăuga câmpul în formularul implicit de înregistrare WordPress, corect?

@Ahmad M Există vreo modalitate de a face validare pentru aceste câmpuri adiționale?

Știe cineva cum să adaug un câmp înaintea numelui de utilizator/emailului? Toate câmpurile se adaugă după acestea două...

Soluția lui @Ahmad M funcționează perfect astăzi, dar încerc să adaug billing_phone (woocommerce) și nu găsesc o modalitate de a salva aceste date în profil... Aș dori, de asemenea, ca aceste câmpuri să fie obligatorii și, dacă este posibil, să elimin "username"-ul și să îl generez automat folosind prenumele și numele

Am găsit un plugin excelent și gratuit care face treaba.
http://wordpress.org/extend/plugins/user-registration-aide/
Foarte ușor de utilizat, adaugă câmpuri atât pe pagina de înregistrare cât și pe cea de profil.
