私は新しい登録者の最初の名前を取得し、私の電子メールテンプレートに表示したい:新Woocomerceアカウントのメールに表示カスタマーFirstNameおよびユーザメタ
$firstname = get_user_meta($userid,'first_name',true);
echo '<pre>';
print_r($firstname);
echo '</pre>'
しかし、それは値を返していません。何か案は?
おかげ
私は新しい登録者の最初の名前を取得し、私の電子メールテンプレートに表示したい:新Woocomerceアカウントのメールに表示カスタマーFirstNameおよびユーザメタ
$firstname = get_user_meta($userid,'first_name',true);
echo '<pre>';
print_r($firstname);
echo '</pre>'
しかし、それは値を返していません。何か案は?
おかげ
問題は、ユーザーが作成された方法であり、このユーザを作成するための私のコードです:
$user = wc_create_new_customer($email,$email,$password);
私は、コードを変更することを解決するために:
$new_customer_data = apply_filters('woocommerce_new_customer_data', array(
'user_login' => $email,
'user_pass' => $password ,
'first_name' => $firstname ,
'last_name' => $lastname ,
'user_email' =>$email ,
'display_name' => $firstname . ' ' . $lastname ,
'nickname' => $firstname . ' ' . $lastname ,
'role' => 'customer'
));
$user_id = wp_insert_user($new_customer_data);
あなたはユーザーオブジェクトを取得するには、ユーザーIDとget_userdata()
wordpressの機能を試すことができます。このユーザオブジェクトを使用すると、他のすべてのデータをこのように得ることができます。
$user_data = get_userdata($userid);
echo 'Username: ' . $user_data->user_login . '<br>';
echo 'First name: ' . $user_data->first_name . '<br>';
echo 'Last name: ' . $user_data->last_name . '<br>';
echo 'User roles: ' . implode(', ', $user_data->roles) . '<br>';
echo 'User ID: ' . $user_data->ID . '<br>';
// To look at the available User raw data:
echo '<pre>'; print_r($user_data); echo '</pre>';
// To look at the available User raw Meta data
echo '<pre>'; print_r(get_post_meta($userid)); echo '</pre>';
を持っている必要がありますまず名前と姓を取得するには、ご登録フォームは、さらにその2つのフィールド
他のメールの通知については、注文が一度作成されると、このデータの注文IDから簡単に取得できます:
// In case that you have only the $order object
if(empty($order_id))
$order_id = $order->id;
$customer_id = get_post_meta($order_id, '_customer_user', true);
$billing_first_name = get_post_meta($order_id, '_billing_first_name', true);
$billing_last_name = get_post_meta($order_id, '_billing_last_name', true);
// Displaying "First name"
echo 'First name: '. $billing_first_name;
ですが、ここではチェックアウトではなくユーザー登録時に電子メールがトリガーされるため、まだ注文は作成されていません – Elland
$ user_dataオブジェクトを取得しましたが、この$ user_data-> first_nameを使用してみましたが、値が返されません – Elland
[data] => stdClassオブジェクト ( [ID] => 87 [user_login] =>電子メール [ user_pass] => $ P $ BrO7b5bsgMK4fjJpL1OspyPV35rBsm/ [user_nicename] => [USER_EMAIL] => EMAI [user_url] => [user_registered] => 2017年3月28日七時32分37秒 [user_activation_key] => [user_status] => 0 [display_name] => – Elland
が適用されます print_r/var_dumpも$ useridで返される内容を確認してください –
登録者のユーザーIDを返します。正しいIDは – Elland