Question

I simply wonder why <?php var_dump(get_user_meta(4)); ?> doesn't contain an email address of the user. Instead I have to use

get_userdata(4)->user_email; to query the email of the user.

Why is that or did I miss something? get_user_meta() seems to provide all other aspects and informations of a user, however just not the email-address.

Matt

Était-ce utile?

La solution

get_user_meta retrieves a single meta field or all fields of the user_meta data for the given user.

This means that all the values that are stored in user_meta table can be got using get_user_meta. Email is not stored as meta data so you cant get email using get_user_meta.

Email is stored with username and password in user table as user data.

Autres conseils

Just wanted to let you know you have get_user_meta and get_userdata. The email address can be found using the get_userdata function.

For the current user this code can apply:

<?php

  $user_id = get_current_user_id(); 
  $user_info = get_userdata($user_id);
  $mailadresje = $user_info->user_email;
  echo $mailadresje;

?>

Please note this is applicable to the current user. If you need to get the user_id of let's say an order you need the following code (which I used to display the users mail on the invoice in WooCommerce) :

<?php

  $user_id = $wpo_wcpdf->export->order->user_id;
  $user_info = get_userdata($user_id);
  $mailadresje = $user_info->user_email;
  echo $mailadresje;

?>

Happy programming!

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top