Описание woocommerce_post_class
— Filter
Хук woocommerce_post_class позволяет изменять классы постов (например, продуктов) в WooCommerce. Он срабатывает при выводе HTML-кода поста и позволяет добавлять или изменять CSS-классы, что может быть полезно для стилизации и функциональности
Примеры использования
Пример добавления кастомного класса к продуктам со скидкой:
add_filter('woocommerce_post_class', function($class, $post) {
if (isset($post->product_type) && $post->product_type === 'simple') {
$class .= ' custom-simple-product';
}
return $class;
});
В этом примере мы добавляем класс ‘custom-simple-product’ к простым продуктам
Пример добавления класса для товаров, которые находятся на складе:
add_filter('woocommerce_post_class', function($class, $post) {
if ($post->stock_status === 'instock') {
$class .= ' in-stock';
}
return $class;
});
Здесь мы добавляем класс ‘in-stock’ для товаров, которые находятся в наличии
Пример удаления стандартного класса ‘sale’ для товаров со скидкой:
add_filter('woocommerce_post_class', function($class, $post) {
if (has_term('sale', 'product_cat', $post)) {
$class = str_replace('sale', '', $class);
}
return $class;
});
В этом примере мы удаляем класс ‘sale’ для продуктов, которые находятся в категории со скидкой
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить или настроить классы постов в WooCommerce для стилизации или функциональности
– Производительность
Хук не должен значительно влиять на производительность, но стоит избегать избыточных проверок внутри фильтра
– Предупреждения
Будьте осторожны, чтобы не нарушить стили, применяемые к стандартным классам WooCommerce
Альтернативы
Тип: filter
Этот хук позволяет добавлять или изменять классы для любых постов в WordPress, не ограничиваясь WooCommerce
Используйте его, если нужно изменить классы для постов вне WooCommerce