通过URL添加WooCommerce优惠券

时间:2019-02-12 19:26:05

标签: wordpress session woocommerce session-cookies coupon

我在申请优惠券时遇到了麻烦。下面的代码可以正常工作,除非用户是第一次访问该网站,而购物车中尚未添加任何内容。我需要清除缓存以重现此错误。

function process_url()
{
    if( empty($_GET['coupon']) )
        return;

    // Add the discount.
    global $woocommerce;
    $result = $woocommerce->cart->add_discount($_GET['coupon']);
}
add_action('init', 'process_url');

我做错什么了吗?

1 个答案:

答案 0 :(得分:0)

显然,如果您应用优惠券,则不会存储用户会话。您需要先添加产品或执行其他操作来存储会话。不过,我们可以手动完成操作,即自己创建会话cookie。

if( !WC()->session->has_session() )
    WC()->session->set_customer_session_cookie(true);

整天接我。希望有人能够使用它。