Описание woocommerce_shortcode_product_page_invalid_statuses
— Filter
Хук woocommerce_shortcode_product_page_invalid_statuses позволяет изменить список статусов товаров, которые считаются недопустимыми для отображения на страницах, создаваемых с помощью шорткодов WooCommerce. Хук срабатывает при обработке шорткодов на страницах товаров, таких как , и дает возможность разработчикам исключать определенные статусы товаров из отображения.
Примеры использования
Пример удаления статуса ‘pending’ из недопустимых статусов.
add_filter('woocommerce_shortcode_product_page_invalid_statuses', function($invalid_statuses) {
$invalid_statuses = array_diff($invalid_statuses, ['pending']);
return $invalid_statuses;
});
В этом примере статус ‘pending’ удаляется из массива недопустимых статусов, что позволяет отображать товары с этим статусом.
Пример добавления нового статуса ‘outofstock’ в недопустимые статусы.
add_filter('woocommerce_shortcode_product_page_invalid_statuses', function($invalid_statuses) {
$invalid_statuses[] = 'outofstock';
return $invalid_statuses;
});
Здесь мы добавляем статус ‘outofstock’ в массив недопустимых статусов, чтобы скрыть товары, которые закончились.
Пример полного переопределения массива недопустимых статусов.
add_filter('woocommerce_shortcode_product_page_invalid_statuses', function($invalid_statuses) {
return ['draft', 'private'];
});
Этот пример полностью заменяет массив недопустимых статусов на ‘draft’ и ‘private’, исключая другие статусы, такие как ‘pending’.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо контролировать, какие статусы товаров могут быть отображены на страницах шорткодов WooCommerce
– Производительность
Хук не должен иметь значительного влияния на производительность, так как изменения касаются только фильтрации статусов
– Предупреждения
Будьте осторожны с удалением статусов, чтобы не скрывать важные товары от пользователей
Альтернативы
Тип: filter
Этот хук позволяет контролировать видимость конкретного товара на страницах WooCommerce.
Используйте его, если нужно дополнительно настроить видимость товаров на основе условий, помимо статусов