Automattic\WooCommerce\EmailEditor\Integrations\WooCommerce

Coupon_Code_Generator::generate_unique_code │ private │ WC 1.0

Generate a unique random coupon code, retrying on collision.

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

Хуков нет.

Возвращает

string. A unique coupon code.

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

// private - только в коде основоного (родительского) класса
$result = $this->generate_unique_code(): string;

Код Coupon_Code_Generator::generate_unique_code() WC 11.2.2

private function generate_unique_code(): string {
	for ( $i = 0; $i < self::MAX_CODE_RETRIES; $i++ ) {
		$code     = $this->generate_random_code();
		$existing = wc_get_coupon_id_by_code( $code );
		if ( ! $existing ) {
			return $code;
		}
	}
	// phpcs:ignore WordPress.Security.EscapeOutput.ExceptionNotEscaped -- exception message, not rendered output.
	throw new \RuntimeException( 'Failed to generate a unique coupon code.' );
}