我已经阅读了关于woocommerce的每一个主题,但是无法找到如何在Woocommerce MiniCart中添加减少按钮的减号按钮,减少购物车项目的数量(最好使用ajax).
我确实设法添加了一个按钮,使用woocommerce短代码和其他几个代码示例增加了数量.但是,我找不到如何减少任何地方的数量.
关于这个有很多问题,没有人回答.或者我在错误的目录中搜索.
但是,有人可以给我一个代码示例,说明如何减少购物车开箱即用的数量?我已经尝试过这些代码行的自定义php文件:
$cartKey = $_POST['cart_item_key']; //The cart key required by set_quantity method
$cartQty = $_POST['cart_item_qty']; //the quantity I provide in my post
global $woocommerce;
echo $woocommerce->cart->set_quantity($cartKey,$cartQty);
Run Code Online (Sandbox Code Playgroud)
但是通过AJAX帖子调用它会给我一个错误(内部服务器错误).我也尝试添加到负数量的购物车,也没有工作.
更新:将此代码添加到WP页面模板并调用该页面不再给我错误.但是,在调用代码后,它不会更新购物车.
我能做什么?非常感谢,我希望有人可以在这里提供帮助!
如何使用WooCommerce钩子获取订单的旧状态和新状态:woocommerce_order_status_changed?
这是我的代码,但只有$order_id填充..
add_action('woocommerce_order_status_changed','woo_order_status_change_custom');
function woo_order_status_change_custom($order_id,$old_status,$new_status) {
//order ID is filled
//old_status and new_status never
//tested by logging the parameters
}
Run Code Online (Sandbox Code Playgroud)
现在,我可以使用以下代码轻松获取新状态:
$order = new WC_Order( $order_id );
$orderstatus = $order->status;
Run Code Online (Sandbox Code Playgroud)
但是,如何获得之前的订单状态,因为它$old_status是空的?