【发布时间】:2021-01-14 16:29:54
【问题描述】:
我无法对此做出正面或反面。我们在functions.php 中有一个脚本,可以通过 AJAX 将产品添加到购物车:
function add_to_cart() {
$multipleProducts = $_POST['multipleProducts'];
$productsArray = $_POST['productsArray'];
foreach ($productsArray as $product) {
$product_id = apply_filters('woocommerce_add_to_cart_product_id', absint($product[0]));
$quantity = empty($_POST['quantity']) ? 1 : wc_stock_amount($product[1]);
\WC()->cart->add_to_cart($product_id, $quantity, null, []);
}
error_log('help!!!');
echo '200';
wp_die();
}
error_log 记录正常,这意味着代码实际上已经达到了那么远。但是,它永远不会 echoes 任何东西或返回任何东西。没有响应,没有错误,只是发送,从不接收。
如果我将error_log 和echo 移到foreach 上方,一切正常。
以前有人见过这种情况吗?我真的不认为这是可能的。
【问题讨论】:
-
您能否再添加一点上下文?因为从代码和你如何描述它来看,它没有任何意义。请给我们用于为 WP 添加 ajax 操作的 php 代码(您使用 _nopriv 和标准操作吗?)以及触发/接收该 ajax 答案的 JS 代码
标签: php ajax wordpress woocommerce cart