WordPress at Your Fingertips
function is not described

WP_User::__construct() public WP 2.0.0

Constructor.

Retrieves the userdata and passes it to WP_User::init().

{} It's a method of the class: WP_User{}

No Hooks.

Return

null. Nothing.

Usage

$WP_User = new WP_User();
$WP_User->__construct( $id, $name, $site_id );
$id(int|string|stdClass|WP_User)
User's ID, a WP_User object, or a user object from the DB.
$name(string)
User's username
Default: ''
$site_id(int)
Optional Site ID.
Default: current site

Changelog

Since 2.0.0 Introduced.

Code of WP_User::__construct() WP 5.8.1

public function __construct( $id = 0, $name = '', $site_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 ( $id instanceof WP_User ) {
		$this->init( $id->data, $site_id );
		return;
	} elseif ( is_object( $id ) ) {
		$this->init( $id, $site_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, $site_id );
	} else {
		$this->data = new stdClass;
	}
}