Automattic\WooCommerce\Blocks\BlockTypes
ProductFilterPrice::prepare_selected_filters
Prepare the active filter items.
Метод класса: ProductFilterPrice{}
Хуков нет.
Возвращает
Массив
. Active filters items.
Использование
$ProductFilterPrice = new ProductFilterPrice(); $ProductFilterPrice->prepare_selected_filters( $items, $params );
- $items(массив) (обязательный)
- The active filter items.
- $params(массив) (обязательный)
- The query param parsed from the URL.
Код ProductFilterPrice::prepare_selected_filters() ProductFilterPrice::prepare selected filters WC 9.9.4
public function prepare_selected_filters( $items, $params ) { $min_price = intval( $params[ self::MIN_PRICE_QUERY_VAR ] ?? 0 ); $max_price = intval( $params[ self::MAX_PRICE_QUERY_VAR ] ?? 0 ); $formatted_min_price = $min_price ? html_entity_decode( wp_strip_all_tags( wc_price( $min_price, array( 'decimals' => 0 ) ) ) ) : null; $formatted_max_price = $max_price ? html_entity_decode( wp_strip_all_tags( wc_price( $max_price, array( 'decimals' => 0 ) ) ) ) : null; if ( ! $formatted_min_price && ! $formatted_max_price ) { return $items; } $item = array( 'type' => 'price', ); if ( $formatted_min_price && $formatted_max_price ) { $item['activeLabel'] = sprintf( /* translators: %1$s and %2$s are the formatted minimum and maximum prices respectively. */ __( 'Price: %1$s - %2$s', 'woocommerce' ), $formatted_min_price, $formatted_max_price ); $item['value'] = "{$min_price}|{$max_price}"; } if ( ! $formatted_min_price ) { /* translators: %s is the formatted maximum price. */ $item['activeLabel'] = sprintf( __( 'Price: Up to %s', 'woocommerce' ), $formatted_max_price ); $item['value'] = "|{$max_price}"; } if ( ! $formatted_max_price ) { /* translators: %s is the formatted minimum price. */ $item['activeLabel'] = sprintf( __( 'Price: From %s', 'woocommerce' ), $formatted_min_price ); $item['value'] = "{$min_price}|"; } $items[] = $item; return $items; }