Tribe__Tickets_Plus__Commerce__WooCommerce__Orders__Table::get_orders( int $event_id )

Get All Orders for an Event


Parameters

$event_id

(int) (Required) The Event ID.


Top ↑

Return

(array|mixed)


Top ↑

Source

File: src/Tribe/Commerce/WooCommerce/Orders/Table.php

	public static function get_orders( $event_id ) {
		if ( ! $event_id ) {
			return array();
		}

		if ( isset( self::$orders[ $event_id ] ) ) {
			return self::$orders[ $event_id ];
		}

		WC()->api->includes();
		WC()->api->register_resources( new WC_API_Server( '/' ) );

		$product_ids = tribe( 'tickets-plus.commerce.woo' )->get_tickets_ids( $event_id );
		$order_ids_by_ticket = self::retrieve_orders_ids_from_a_product_id( $product_ids );
		foreach ( $order_ids_by_ticket as $ticket ) {
			foreach ( $ticket as $order_id ) {
				if ( empty( $order_id ) ) {
					continue;
				}

				$order = WC()->api->WC_API_Orders->get_order( $order_id );

				//prevent fatal error if no orders and on refund orders
				if ( ! is_wp_error( $order ) && isset( $order['order'] ) ) {
					$orders[ $order_id ] = $order['order'];
				}
			}
		}

		self::$orders[ $event_id ] = $orders;

		return $orders;
	}

Top ↑

Changelog

Changelog
Version Description
5.6.5 Removed usage of WC REST API and make use of Order API to generate order data.
4.10.4 Introduced.