我試着去更新後的小型車(cart_fragments)/上一個Ajax事件。它是這樣工作的。通過PHP或jQuery刷新cart_fragments(mini-cart)?
HTML觸發:
<a id="woomps-button-\'.$nr.\'" class="woomps-button" '.$ajax_url.' data-button-nr="'.$nr.'">
jQuery的要求:
jQuery(document).on('click', '.woomps-button', function() {
var nr= jQuery(this).data('button-nr');
jQuery.ajax({
url : subpost.ajax_url,
type : 'post',
data : {
action : 'woomps_update_nr',
security : subpost.security,
nr: nr
},
success : function(response) {
window.alert(nr);
//MAYBE_code to refresh_fragments here
}
});
return false;
});
PHP應答:
function woomps_update_choosen_person() {
$p = $_POST['nr'];
if ($p == 1) {$x= "This must show in cart";}
WC()->session->set('woomps_limit_by_persons' , $x);
//MAYBE code to refresh_fragments here
}
而在迷你cart.php模板,我有在此基礎上計算領域。
$items_left_start = WC()->session->get('woomps_limit_by_persons')?: 3 ;
//Do something something here
所以此工程,但我需要刷新,當一個項目被添加到購物車像車。我的假設是,應該是來自jQuery的ajax請求,我可以放入成功塊?
I類(認爲)我想火就是這個WC_AJAX::get_refreshed_fragments();
但是,這是從一個ADD_ACTION解僱,所以我想這add_action('wp_ajax_nopriv_woocommerce_get_refreshed_fragments', array('WC_AJAX', 'get_refreshed_fragments'));
。但它也沒有效果。
我也嘗試喜歡它在add_to_cart按鈕的功能來創建一個jQuery的AJAX調用,但它既不工作。
//MAYBE_code to refresh_fragments here
var data = {};
jQuery.post(
wc_get_refreshed_fragments_params.wc_ajax_url.toString().
replace('%%endpoint%%', 'get_refreshed_fragments'), data,
function(response){
})
}
我不完全理解它是如何工作的,如果有人有一些指針或一個片段,我會這麼多它並欣賞。一段時間以來,這一直在與此結合。