1
ショップページ[woocommerce_cart]にwoocommerceショットコードを使用しています。私はajaxを使用して製品を削除しようとしています。製品のIDとカートの取り外し機能がどのように機能していないのか商品をカートで取り除く
jQuery(document).ready(function($) {
$(document).on('click', '.product-remove .remove', function(e) {
e.preventDefault();
var unit_id =// how can find product id;
e.preventDefault();
$.ajax({
type: 'post',
beforeSend: function() { $('#wait').show(); },
data: {catremovpid: unit_id}, //Pass the id
url:'http://mysiteurl.com/one-page/test/',
success: function(data){
$('.bd_woo_cart').empty().prepend('');
$('.bd_woo_cart').append(data);
console.log(data);
},
error: function(data){
console.log('error');
}
});
});
});
とPHPの関数は
if (isset($_POST["catremovpid"])){
$data = $_POST["catremovpid"];
$prod_unique_id = WC()->cart->generate_cart_id($data);
// Remove it from the cart by un-setting it
unset(WC()->cart->cart_contents[$prod_unique_id]);
echo do_shortcode ('[woocommerce_cart]');
}
しかし、製品であるカートに削除されていません。しかし、このコードはカートページの作業です。しかし、ショップのページでこれは動作していません。
ファーストを教えてください。削除ボタン上のプロダクトIDを見つけることができるか(VARのUNIT_ID = //プロダクトIDを見つけることができますどのように)。しかし、私はremove_cart_itemの機能が動作していないことを確認しています。 –
このコードはカートのページで動作しますが、私は衣装のページ(ショップページのようなもの)に取り組んでいます。 –
私はそれを得ました。しかし、plugins/woocommerce/templates/cart/cart.phpと同じテクニックを使うことができます。 woocommerce_cart shortcodeを使用する代わりに、独自のカスタムショートコードを作成し、指定されたファイル内のコードを使用します。あなたが必要なすべての機能を(IDを取得するために、リンクを削除するための準備ができた機能など)見つけることができます。 –