如何使用Woocommerce WC_AJAX类

use*_*599 5 php ajax jquery woocommerce

我正在开发一个基于Wordpress WooCommerce的商店。我使用ajax进行数据调用。但是我正在通过wp-admin / admin-ajax.php在function.php文件中使用自己的函数进行操作。

昨天我在woocommerce类WC_AJAX中找到了。我的问题是如何启用该类中的事件,以及如何从js中调用它们。

dw1*_*dw1 4

PHP - 不要if(is_admin())像常规 WP ajax 操作那样换行。WC ajax在前端:

add_action('wc_ajax_myaction','myaction');
function myaction(){
    exit("Hello. some_var=".$_POST['some_var']);
}
Run Code Online (Sandbox Code Playgroud)

JS - 要加载的 URL/?wc-ajax=myaction可以使用标准 XMLHttpRequest 或jQuery调用:

var data={
    some_var:'some value'
}
jQuery.post('/?wc-ajax=myaction',data)
.done(function(result){
    console.log('ajax request completed. result=',result);
})
.fail(function(){
    console.log('ajax request failed. check network log.');
});
Run Code Online (Sandbox Code Playgroud)