Automattic\WooCommerce\Internal\DataStores\Orders
OrdersTableStatusUnionQuery::has_rewritable_clause_shape
Checks the fixed clauses (selected fields, join, group by) are exactly those of the plain order id list query. Any join, grouping or extra selected field means the query isn't a candidate for the rewrite.
Method of the class: OrdersTableStatusUnionQuery{}
No Hooks.
Returns
true|false. Whether the clause shape is rewritable.
Usage
// private - for code of main (parent) class only $result = $this->has_rewritable_clause_shape( $clauses ): bool;
- $clauses(string[]) (required)
- The query clauses (see get_sql()).
OrdersTableStatusUnionQuery::has_rewritable_clause_shape() OrdersTableStatusUnionQuery::has rewritable clause shape code WC 11.0.0
private function has_rewritable_clause_shape( array $clauses ): bool {
return '' === ( $clauses['join'] ?? '' )
&& '' === ( $clauses['groupby'] ?? '' )
&& "{$this->orders_table}.id" === ( $clauses['fields'] ?? '' );
}