Я пытаюсь получить содержимое корзины woocommerce в функции обратного вызова ajax, но оно возвращается пустым.
Я также пытался использовать глобальную переменную $ woocommerce, которая также возвращает тот же результат. Я пытаюсь получить содержимое корзины и конвертировать весь товар в функцию автозавода. Я использую плагин wooautoship для этого. Тем не менее, основной вопрос, как получить информацию о корзине в обратном вызове Ajax
Мой код выглядит следующим образом:
add_action('wp_footer', 'woo_cart_autoship_js', 99);
function woo_cart_autoship_js(){
?>
<script type="text/javascript">
(function($){
$(document).on('click', '#convert-to-autoship', function(e){
e.preventDefault();
$.post( "<?php echo admin_url('admin-ajax.php'); ?>", { action: "convert-to-autoship" })
.done(function( data ) {
alert( "Data Loaded: " + data );
});
});
})(jQuery);
</script>
<?php
}
add_action( 'wp_ajax_convert-to-autoship', 'convert_to_autoship', 99 );
add_action( 'wp_ajax_nopriv_convert-to-autoship', 'convert_to_autoship', 99 );
function convert_to_autoship(){
print_r(WC()->cart->get_cart());
wp_die();
}