Automattic\WooCommerce\Blocks\BlockTypes

ProductFilterRating::prepare_selected_filterspublicWC 1.0

Prepare the active filter items.

Метод класса: ProductFilterRating{}

Хуков нет.

Возвращает

Массив. Active filters items.

Использование

$ProductFilterRating = new ProductFilterRating();
$ProductFilterRating->prepare_selected_filters( $items, $params );
$items(массив) (обязательный)
The active filter items.
$params(массив) (обязательный)
The query param parsed from the URL.

Код ProductFilterRating::prepare_selected_filters() WC 10.7.0

public function prepare_selected_filters( $items, $params ) {
	if ( empty( $params[ self::RATING_FILTER_QUERY_VAR ] ) ) {
		return $items;
	}

	$active_ratings = array_map( 'absint', explode( ',', $params[ self::RATING_FILTER_QUERY_VAR ] ) );
	$active_ratings = array_filter(
		$active_ratings,
		function ( $rating ) {
			return $rating > 0 && $rating < 6;
		}
	);
	$active_ratings = array_unique( $active_ratings );

	if ( empty( $active_ratings ) ) {
		return $items;
	}

	foreach ( $active_ratings as $rating ) {
		$items[] = array(
			'type'        => 'rating',
			'value'       => (string) $rating,
			/* translators: %s is referring to rating value. Example: Rated 4 out of 5. */
			'activeLabel' => sprintf( __( 'Rating: Rated %d out of 5', 'woocommerce' ), $rating ),
		);
	}

	return $items;
}