Automattic\WooCommerce\StoreApi\Routes\V1

AbstractRoute::get_context_param()protectedWC 1.0

Retrieves the context param.

Ensures consistent descriptions between endpoints, and populates enum from schema.

Method of the class: AbstractRoute{}

No Hooks.

Return

Array. Context parameter details.

Usage

// protected - for code of main (parent) or child class
$result = $this->get_context_param( $args );
$args(array)
Additional arguments for context parameter.
Default: empty array

AbstractRoute::get_context_param() code WC 8.7.0

protected function get_context_param( $args = array() ) {
	$param_details = array(
		'description'       => __( 'Scope under which the request is made; determines fields present in response.', 'woocommerce' ),
		'type'              => 'string',
		'sanitize_callback' => 'sanitize_key',
		'validate_callback' => 'rest_validate_request_arg',
	);

	$schema = $this->get_item_schema();

	if ( empty( $schema['properties'] ) ) {
		return array_merge( $param_details, $args );
	}

	$contexts = array();

	foreach ( $schema['properties'] as $attributes ) {
		if ( ! empty( $attributes['context'] ) ) {
			$contexts = array_merge( $contexts, $attributes['context'] );
		}
	}

	if ( ! empty( $contexts ) ) {
		$param_details['enum'] = array_unique( $contexts );
		rsort( $param_details['enum'] );
	}

	return array_merge( $param_details, $args );
}