Automattic\WooCommerce\Internal\Admin\Reports
HposLegacyOrderReportQueryBuilder::resolve_meta_select
Resolve a type=meta SELECT.
Method of the class: HposLegacyOrderReportQueryBuilder{}
No Hooks.
Returns
array{0: string, 1: array<string,string>}. SELECT fragment and JOINs.
Usage
// private - for code of main (parent) class only $result = $this->resolve_meta_select( $raw_key, $key, $join_type );
- $raw_key(string) (required)
- Meta key.
- $key(string) (required)
- Sanitized version of the meta key.
- $join_type(string) (required)
- Join type.
HposLegacyOrderReportQueryBuilder::resolve_meta_select() HposLegacyOrderReportQueryBuilder::resolve meta select code WC 11.1.2
private function resolve_meta_select( $raw_key, $key, $join_type ) {
$schema = $this->get_report_schema();
if ( isset( $schema['order_column'][ $raw_key ] ) ) {
return array( $schema['order_column'][ $raw_key ], array() );
}
if ( isset( $schema['op_data_column'][ $raw_key ] ) ) {
return array( $schema['op_data_column'][ $raw_key ], $this->build_op_data_join() );
}
if ( isset( $schema['address_column'][ $raw_key ] ) ) {
list( $address_type, $column ) = $schema['address_column'][ $raw_key ];
return array( "address_{$address_type}.{$column}", $this->build_address_join( $address_type ) );
}
return array(
"meta_{$key}.meta_value",
$this->build_meta_join( $key, $raw_key, $join_type ),
);
}