Описание woocommerce_taxonomy_objects_product_shipping_class
— Filter
Хук woocommerce_taxonomy_objects_product_shipping_class позволяет изменять массив объектов таксономии классов доставки товаров в WooCommerce. Он срабатывает при получении объектов классов доставки и позволяет модифицировать их перед выводом
Примеры использования
Пример удаления определенного класса доставки из списка:
add_filter('woocommerce_taxonomy_objects_product_shipping_class', function($terms) {
foreach ($terms as $key => $term) {
if ($term->slug === 'free-shipping') {
unset($terms[$key]);
}
}
return $terms;
});
В этом примере удаляется класс доставки с ярлыком ‘free-shipping’ из массива классов доставки
Пример добавления нового класса доставки в массив:
add_filter('woocommerce_taxonomy_objects_product_shipping_class', function($terms) {
$new_term = get_term_by('slug', 'express-shipping', 'product_shipping_class');
if ($new_term) {
$terms[] = $new_term;
}
return $terms;
});
Здесь мы добавляем класс доставки с ярлыком ‘express-shipping’, если он существует
Пример изменения имени класса доставки перед выводом:
add_filter('woocommerce_taxonomy_objects_product_shipping_class', function($terms) {
foreach ($terms as $term) {
if ($term->slug === 'standard-shipping') {
$term->name = 'Стандартная доставка';
}
}
return $terms;
});
В данном примере мы изменяем имя класса доставки с ярлыком ‘standard-shipping’ на ‘Стандартная доставка’
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить или модифицировать классы доставки товаров перед их отображением
– Производительность
Хук не должен существенно влиять на производительность, так как изменения касаются только массивов объектов
– Предупреждения
Следите за тем, чтобы изменения не нарушали логику работы классов доставки на вашем сайте
Альтернативы
Тип: filter
Этот хук позволяет изменять класс доставки конкретного товара при его сохранении
Используйте его, если необходимо изменить класс доставки для отдельных товаров, а не для всех классов