Как удалить кнопку «Добавить в корзину» в WooCommerce

Сегодня разберёмся как удалить кнопку «Добавить в корзину» в плагине WooCoommerce.

Видеоверсия

По умолчанию в WooCommerce кнопка «Добавить в корзину» отображается в списке товаров и на странице товара.

За вывод товара в списке отвечает шаблон content-product.php, а за вывод одиночного товара — content-single-product.php.

Находим места вывода кнопки в шаблонах: в content-product.php — это функция woocommerce_template_loop_add_to_cart, прикреплённая к действию woocommerce_after_shop_loop_item.

А в content-single-product.php — woocommerce_template_single_add_to_cart, прикреплённая к woocommerce_single_product_summary.

Для удаления кнопки «Добавить в корзину» нам необходимо открепить функции от действий. Вставляем код любым удобным способом

и проверяем результат.

При необходимости мы можем ограничить область действия кода, например, удалить кнопку только для определённого товара.

Удаление кнопки «Добавить в корзину» для определённого товара

Удалим кнопку «Добавить в корзину» для товара с ID равным 20 (на моем сайте-примере он называется «Тест 1»). Для этого модифицируем наш код в следующий вид:

и проверяем результат.

Также для удаления кнопки «Добавить в корзину» для определённого товара мы можем воспользоваться фильтром woocommerce_is_purchasable:

В этом случае вместо кнопки «В корзину» отобразится ссылка «Подробнее».