Я создаю плагин для формы массового заказа (для использования с WordPress / WooCommerce) - все функции добавления в корзину работают нормально. Я борюсь за создание кнопки «Отменить заказ», которая при нажатии очищает все строки элементов (этот бит работает), а также удаляет все элементы из корзины.
Я пытаюсь сделать это, используя комбинацию AJAX / js, php и стандартного HTML ..:
Моя кнопка ..:
<button class="btn btn-danger btn-lg" id="cancelorder">Cancel Order</button>
Функция "Моя корзина пуста" ..:
add_action( 'init', 'woocommerce_clear_cart_url' );
function woocommerce_clear_cart_url() {
global $woocommerce;
if ( isset( $_GET['empty-cart'] ) ) {
$woocommerce->cart->empty_cart();
}
}
и, наконец, мой вызов функции js / ajax ..:
$("#cancelorder").click(function(){
if(confirm('Are you sure you want to clear all rows?')){
$(".addedrow").remove(); //removes line items - not related to issue
$.ajax({
type: "POST",
url: '/wp-admin/admin-ajax.php?action=woocommerce_clear_cart_url',
data: {action : 'woocommerce_clear_cart_url'},
success: function (res) {
if (res) {
alert('Removed Successfully');
}
}
});
} else {
//back out with no action
}
});
Строки удаляются из формы, но элементы остаются в корзине.