WC_Order_Item_Meta::get_formatted( string $hideprefix = '_' )

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


Description Description

Returns: array( ‘pa_size’ => array( ‘label’ => ‘Size’, ‘value’ => ‘Medium’, ) )


Parameters Parameters

$hideprefix

(Optional) exclude meta when key is prefixed with this, defaults to '_'.

Default value: '_'


Top ↑

Return Return

(array)


Top ↑

Source Source

File: includes/class-wc-order-item-meta.php

	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 );
	}

Top ↑

Changelog Changelog

Changelog
Version Description
2.4 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.