Abstract_WC_Order_Data_Store_CPT::set_order_props()privateWC 1.0

Set the properties of an object and log the first error found while doing so.

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

Хуков нет.

Возвращает

null. Ничего (null).

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

// private - только в коде основоного (родительского) класса
$result = $this->set_order_props( $order, $props );
$order (обязательный) (передается по ссылке — &)
-
$props(массив) (обязательный)
The properties to set.

Код Abstract_WC_Order_Data_Store_CPT::set_order_props() WC 9.3.3

private function set_order_props( &$order, array $props ) {
	$errors = $order->set_props( $props );

	if ( ! $errors instanceof WP_Error ) {
		return;
	}

	$order_id = $order->get_id();
	$logger   = WC()->call_function( 'wc_get_logger' );

	foreach ( $errors->get_error_codes() as $error_code ) {
		$property_name = $errors->get_error_data( $error_code )['property_name'] ?? '';
		$error_message = $errors->get_error_message( $error_code );
		$logger->warning(
			sprintf(
			/* translators: %1$s = order ID, %2$s = order id, %3$s = error message. */
				__( 'Error when setting property \'%1$s\' for order %2$d: %3$s', 'woocommerce' ),
				$property_name,
				$order_id,
				$error_message
			),
			array(
				'error_code'    => $error_code,
				'error_message' => $error_message,
				'order_id'      => $order_id,
				'property_name' => $property_name,
			)
		);
	}
}