/**
  * Constructor
  *
  * Retrieves the userdata and passes it to {@link WP_User::init()}.
  *
  * @since 2.0.0
  * @access public
  *
  * @param int|string $id User's ID
  * @param string $name Optional. User's username
  * @param int $blog_id Optional Blog ID, defaults to current blog.
  * @return WP_User
  */
 function __construct($id = 0, $name = '', $blog_id = '')
 {
     if (!isset(self::$back_compat_keys)) {
         $prefix = $GLOBALS['wpdb']->prefix;
         self::$back_compat_keys = array('user_firstname' => 'first_name', 'user_lastname' => 'last_name', 'user_description' => 'description', 'user_level' => $prefix . 'user_level', $prefix . 'usersettings' => $prefix . 'user-settings', $prefix . 'usersettingstime' => $prefix . 'user-settings-time');
     }
     if (!empty($id) && !is_numeric($id)) {
         $name = $id;
         $id = 0;
     }
     if ($id) {
         $data = self::get_data_by('id', $id);
     } else {
         $data = self::get_data_by('login', $name);
     }
     if ($data) {
         $this->init($data, $blog_id);
     }
 }
 /**
  * Constructor.
  *
  * Retrieves the userdata and passes it to WP_User::init().
  *
  * @since 2.0.0
  * @access public
  *
  * @param int|string|stdClass|WP_User $id User's ID, a WP_User object, or a user object from the DB.
  * @param string $name Optional. User's username
  * @param int $blog_id Optional Site ID, defaults to current site.
  */
 public function __construct($id = 0, $name = '', $blog_id = '')
 {
     $this->db = $GLOBALS['wpdb'];
     if (!isset(self::$back_compat_keys)) {
         $prefix = $this->db->prefix;
         self::$back_compat_keys = array('user_firstname' => 'first_name', 'user_lastname' => 'last_name', 'user_description' => 'description', 'user_level' => $prefix . 'user_level', $prefix . 'usersettings' => $prefix . 'user-settings', $prefix . 'usersettingstime' => $prefix . 'user-settings-time');
     }
     if ($id instanceof WP_User) {
         $this->init($id->data, $blog_id);
         return;
     } elseif (is_object($id)) {
         $this->init($id, $blog_id);
         return;
     }
     if (!empty($id) && !is_numeric($id)) {
         $name = $id;
         $id = 0;
     }
     if ($id) {
         $data = self::get_data_by('id', $id);
     } else {
         $data = self::get_data_by('login', $name);
     }
     if ($data) {
         $this->init($data, $blog_id);
     } else {
         $this->data = new stdClass();
     }
 }