Automattic\WooCommerce\Admin\API\Reports\Customers

DataStore::get_customer_id_by_emailpublic staticWC 1.0

Retrieve a customer ID by email address, regardless of user registration status. Prioritizes registered customers over guest customers when both exist.

Метод класса: DataStore{}

Хуков нет.

Возвращает

false|int. Customer ID if found, boolean false if not.

Использование

$result = DataStore::get_customer_id_by_email( $email );
$email(строка) (обязательный)
Email address.

Код DataStore::get_customer_id_by_email() WC 11.1.0

public static function get_customer_id_by_email( $email ) {
	global $wpdb;

	if ( empty( $email ) || ! is_email( $email ) ) {
		return false;
	}

	$table_name  = self::get_db_table_name();
	$customer_id = $wpdb->get_var(
		$wpdb->prepare(
			// phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared
			"SELECT customer_id FROM {$table_name} WHERE email = %s ORDER BY user_id IS NOT NULL DESC LIMIT 1",
			$email
		)
	);

	return $customer_id ? (int) $customer_id : false;
}