web-dev-qa-db-fra.com

Affichage d'un message de bienvenue à un utilisateur de Woocommerce

Dans les champs d'enregistrement, j'ai introduit deux champs supplémentaires qui prennent le prénom et le nom de famille de l'utilisateur qui s'enregistre. Dans mon fichier woocommerce-functions.php, je définis (nom_utilisateur/nom) comme suit:

function woocommerce_process_registration() {
global $woocommerce, $current_user;

if ( ! empty( $_POST['register'] ) ) {

    $woocommerce->verify_nonce( 'register' );

    // Get fields
    $user_email = isset( $_POST['email'] ) ? trim( $_POST['email'] ) : '';
    $password   = isset( $_POST['password'] ) ? trim( $_POST['password'] ) : '';
    $password2  = isset( $_POST['password2'] ) ? trim( $_POST['password2'] ) : '';
    $user_email = apply_filters( 'user_registration_email', $user_email );
    $user_firstname = isset( $_POST['firstname'] ) ? trim( $_POST['firstname'] ) : '';
    $user_lastname = isset( $_POST['lastname'] ) ? trim( $_POST['lastname'] ) : '';

Cela étant dit, comment pourrais-je ajouter un message de bienvenue à mon header.php qui utilise le format,

<?php global $user_identity;
get_currentuserinfo();

if ($user_identity == '') {
echo('Welcome Guest');
} else {
echo('Welcome ' . $user_identity);
}
?>

Merci d'avance!

1
Sean Smithington

Ce n'est pas une question de WooCommerce. Une fois que l'utilisateur est enregistré, vous utilisez les fonctions WordPress pour vérifier si l'utilisateur est connecté et pour récupérer les informations de l'utilisateur. En supposant que vous enregistrez correctement les informations de l'utilisateur, cela devrait alors indiquer le prénom de l'utilisateur à l'utilisateur et un message générique à un utilisateur non connecté.

if ( is_user_logged_in() ) {
    $current_user = wp_get_current_user();
    echo 'Welcome, ' . $current_user->user_firstname . '!';
} else {
    echo 'Welcome, visitor!';
}

Voir le Codex pour les références:

is_user_logged_in()
wp_get_current_user()

5
helgatheviking