Описание woocommerce_is_downloadable
— Filter
Хук woocommerce_is_downloadable позволяет определить, является ли товар загрузочным. Он срабатывает при проверке доступности загрузки товара в процессе оформления заказа или в процессе отображения информации о товаре, что позволяет изменить поведение загрузки товаров
Примеры использования
Пример изменения доступности загрузки для определенного товара:
add_filter('woocommerce_is_downloadable', function($is_downloadable, $product) {
if ($product->get_id() === 123) {
return true; // Сделать товар с ID 123 загрузочным
}
return $is_downloadable;
});
В этом примере мы делаем товар с ID 123 загрузочным, независимо от его настроек.
Пример отключения загрузки для всех товаров:
add_filter('woocommerce_is_downloadable', function($is_downloadable) {
return false; // Отключаем загрузку для всех товаров
});
Этот код отключает возможность загрузки для всех товаров в магазине.
Пример изменения доступности загрузки в зависимости от категории товара:
add_filter('woocommerce_is_downloadable', function($is_downloadable, $product) {
if (has_term('digital', 'product_cat', $product->get_id())) {
return true; // Делает все товары из категории 'digital' загрузочными
}
return $is_downloadable;
});
Здесь мы делаем все товары из категории ‘digital’ доступными для загрузки.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить поведение загрузки товаров в зависимости от условий, таких как ID товара или категория
– Производительность
Поскольку этот хук используется для проверки состояния, он не должен значительно влиять на производительность
– Предупреждения
Не забудьте проверить все условия и убедитесь, что изменения не нарушают функциональность магазина
Альтернативы
Тип: filter
Похожий хук, который позволяет изменять статус загрузки на уровне самого товара
Используйте, если хотите изменить доступность загрузки на более низком уровне, например, при редактировании товара