Automattic\WooCommerce\Admin\Features\Fulfillments

FulfillmentOrderNotes::format_items │ private │ WC 1.0

Format fulfillment items as a comma-separated string.

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

Хуков нет.

Возвращает

string. Formatted items string.

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

// private - только в коде основоного (родительского) класса
$result = $this->format_items( $fulfillment, $order ): string;
$fulfillment(Fulfillment) (обязательный)
The fulfillment object.
$order(WC_Order) (обязательный)
The order object.

Код FulfillmentOrderNotes::format_items() WC 11.2.2

private function format_items( Fulfillment $fulfillment, \WC_Order $order ): string {
	$items       = $fulfillment->get_items();
	$order_items = $order->get_items();
	$parts       = array();

	foreach ( $items as $item ) {
		$item_id = isset( $item['item_id'] ) ? (int) $item['item_id'] : 0;
		$qty     = isset( $item['qty'] ) ? (int) $item['qty'] : 0;
		$name    = '';

		foreach ( $order_items as $order_item ) {
			if ( (int) $order_item->get_id() === $item_id ) {
				$name = $order_item->get_name();
				break;
			}
		}

		if ( empty( $name ) ) {
			$name = sprintf(
				/* translators: %d: item ID */
				__( 'Item #%d', 'woocommerce' ),
				$item_id
			);
		}

		$parts[] = sprintf( '%s x%s', $name, $qty );
	}

	return implode( ', ', $parts );
}