Вам нужно добавить действие, которое будет очищать элементы корзины в перехватчике перенаправления шаблона.
В пользовательской функции, проверить слаг текущей страницы и затем очистить корзину согласно нашему условию.
Используйте приведенный ниже фрагмент кода в functions.php
или файле пользовательского плагина вашей темы.
add_action( 'template_redirect', 'woocommerce_clear_cart_url' );
function woocommerce_clear_cart_url() {
global $post;
$slug = $post->post_name;
if($slug == 'sample-page') {
global $woocommerce;
$woocommerce->cart->empty_cart();
}
}
Обновление
Если вам не нравится жесткое кодирование слага страницы, есть и лучший метод.
add_action( 'init', 'woocommerce_clear_cart_url' );
function woocommerce_clear_cart_url() {
if ( isset( $_GET['clear-cart'] ) ) {
global $woocommerce;
$woocommerce->cart->empty_cart();
}
}
Добавьте указанный выше код в файл functions.php
вашей темы.
Затем перенаправьте на страницу, добавив в свой URL-адрес строку запроса clear-cart
и это очистит все элементы корзины.
Мы можем использовать эту функцию в любом URL.
http://example.com? Clear-cart
или
http://example.com/sample-page/?clear-cart