web-dev-qa-db-ja.com

Woocommerceユーザーへのウェルカムメッセージの表示

登録フィールドでは、登録ユーザーの姓と名を受け取る2つの追加フィールドを紹介しました。私のwoocommerce-functions.phpでは、(user_firstname/lastname)を以下のように定義します。

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'] ) : '';

そうは言っても、私はどうやって私のheader.phpにウェルカムメッセージを追加してフォーマットを使うのでしょうか。

<?php global $user_identity;
get_currentuserinfo();

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

前もって感謝します!

1

これはWooCommerceの質問ではありません。ユーザーが登録されたら、WordPressの機能を使用して、ユーザーがログインしているかどうかを確認し、ユーザーの情報を取得します。ユーザ情報を正しく保存していると仮定すると、これはユーザにユーザのファーストネームを、そしてログインしていないユーザに一般的なメッセージを表示するはずです。

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

参考資料としてコーデックスを参照してください。

is_user_logged_in()
wp_get_current_user()

5
helgatheviking