web-dev-qa-db-fra.com

Thème mon plugin de connexion, comment mettre à jour les champs

J'utilise le plug-in Theme my Login pour un projet client et je ne parviens pas à mettre à jour les champs de profil une fois qu'un utilisateur a été enregistré;

J'ai suivi les instructions ici mais elles ne semblaient avoir aucun effet. Si quelqu'un pouvait nous éclairer, ce serait formidable.

Ceci est mon code actuel;

register-form.php

<p>
    <input
      type="text"
      name="phone_number" 
      id="phone_number<?php $template->the_instance(); ?>" 
      class="input" 
      value="<?php $template->the_posted_value( 'phone_number' ); ?>" 
      size="20" 
      tabindex="20" 
      placeholder="Phone Number"
    />
</p>

profile-form.php

<p>
    <input 
      type="text" 
      name="phone_number" 
      id="phone_number" 
      value="<?php echo esc_attr( $profileuser->phone_number ); ?>" 
      class="regular-text" 
      placeholder="Phone Number"
    />
</p>

theme-my-login-custom.php

function tml_user_register( $user_id ) {
        // Phone Number
        if ( !empty( $_POST['phone_number'] ) )
            update_user_meta( $user_id, 'phone_number', $_POST['phone_number'] );
}
add_action( 'user_register', 'tml_user_register' );
1
Poisontonomes

Le user_register hook ne se déclenche que lorsque l'utilisateur s'enregistre pour la première fois. Pour que les données de profil personnalisées apparaissent sur l'écran Modifier l'utilisateur, vous devez utiliser le edit_user_profile hook (et éventuellement show_user_profile , si vous souhaitez que les utilisateurs puissent modifier leurs propres informations de profil personnalisé).

1
Pat J