А так? JQ у меня заржавел давно, так что баги должны быть =) Переписал под существующий там ajax backend
jQuery("#wc_pr_incr_buy").html( "<a href='#'>Оформить покупку</a>" ).click(function(event){
event.stopPropagation(); //отмена перехода
var button= prod.find(".add_to_cart_button"),
id=button.attr("data-product_id"), //получаем id продукта
sku=button.attr("data-product_sku");
jQuery.ajax({
url:"/wp-admin/admin-ajax.php",
data:"action=woocommerce_add_to_cart&product_id="+id+"&product_sku="+sku+"&quantity=1",
type:"POST",
success: function (data, textStatus) { // вешаем обработчик на функцию success
window.location.href="/checkout";
}
});
});
в ссылке на оформление можно написать вместо <a href='#'>Оформить покупку</a> <a href='/magazin?add-to-cart="+prod+"'>Оформить покупку</a>" ради просто "нормальности ссылки" - этот url не учитывается при клике