wc_body_class() WC 1.0

Додає WooCommerce класи , що стосуються поточної сторінки в тег <body>.

Функція автоматично викликається на фільтрі body_class хук .

Крім інших класів, функція завжди додає клас woocommerce-no-jsі запускає функцію wc_no_js() у підвалі, яка змінює цей клас на woocommerce-js. Таким чином WC визначає, чи працює JS в браузері.

Хуків немає.

Повертає

Массив. Доповнений масив класів для body body.

Використання

wc_body_class($classes);
$classes
(масив) (обов’язковий)
Масив класів, який передається в хук
body_class .

Приклади

0

#1 Додамо клас із типом продукту для сторінки продукту

add_filter( 'body_class', 'add_class_to_product_page');

function add_class_to_product_page( $classes ){

	if ( is_product() ) {
		$product = wc_get_product();

		$classes[] = 'product-type-' . $product->get_type();
	}

	return $classes;
}

Код wc_body_class() WC 6.8.2

function wc_body_class( $classes ) {
	$classes = (array) $classes;

	if ( is_shop() ) {

		$classes[] = 'woocommerce-shop';

	}

	if ( is_woocommerce() ) {

		$classes[] = 'woocommerce';
		$classes[] = 'woocommerce-page';

	} elseif (is_checkout()) {

		$classes[] = 'woocommerce-checkout';
		$classes[] = 'woocommerce-page';

	} elseif (is_cart()) {

		$classes[] = 'woocommerce-cart';
		$classes[] = 'woocommerce-page';

	} elseif (is_account_page()) {

		$classes[] = 'woocommerce-account';
		$classes[] = 'woocommerce-page';

	}

	if ( is_store_notice_showing() ) {
		$classes[] = 'woocommerce-demo-store';
	}

	foreach ( WC()->query->get_query_vars() as $key => $value ) {
		if ( is_wc_endpoint_url( $key ) ) {
			$classes[] = 'woocommerce-'. sanitize_html_class($key);
		}
	}

	$classes[] = 'woocommerce-no-js';

	add_action( 'wp_footer', 'wc_no_js');

	return array_unique($classes);
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *