WC_Order_Item_Meta::get_formatted()publicWC 2.4

Return an array of formatted item meta in format e.g.

Returns: array( 'pa_size' => array(

'label' => 'Size',
'value' => 'Medium',

) )

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

Возвращает

Массив.

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

$WC_Order_Item_Meta = new WC_Order_Item_Meta();
$WC_Order_Item_Meta->get_formatted( $hideprefix );
$hideprefix(строка)
exclude meta when key is prefixed with this.
По умолчанию: '_'

Список изменений

С версии 2.4 Введена.

Код WC_Order_Item_Meta::get_formatted() WC 8.7.0

public function get_formatted( $hideprefix = '_' ) {
	if ( $this->legacy ) {
		return $this->get_formatted_legacy( $hideprefix );
	}

	$formatted_meta = array();

	if ( ! empty( $this->item['item_meta_array'] ) ) {
		foreach ( $this->item['item_meta_array'] as $meta_id => $meta ) {
			if ( '' === $meta->value || is_serialized( $meta->value ) || ( ! empty( $hideprefix ) && substr( $meta->key, 0, 1 ) === $hideprefix ) ) {
				continue;
			}

			$attribute_key = urldecode( str_replace( 'attribute_', '', $meta->key ) );
			$meta_value    = $meta->value;

			// If this is a term slug, get the term's nice name.
			if ( taxonomy_exists( $attribute_key ) ) {
				$term = get_term_by( 'slug', $meta_value, $attribute_key );

				if ( ! is_wp_error( $term ) && is_object( $term ) && $term->name ) {
					$meta_value = $term->name;
				}
			}

			$formatted_meta[ $meta_id ] = array(
				'key'   => $meta->key,
				'label' => wc_attribute_label( $attribute_key, $this->product ),
				'value' => apply_filters( 'woocommerce_order_item_display_meta_value', $meta_value, $meta, $this->item ),
			);
		}
	}

	return apply_filters( 'woocommerce_order_items_meta_get_formatted', $formatted_meta, $this );
}