Добавить купон WooCommerce через URL - PullRequest
0 голосов
/ 12 февраля 2019

У меня проблемы с применением купонов.Код ниже работает, за исключением случаев, когда пользователь заходит на сайт впервые, и в корзину еще ничего не добавлено.Мне нужно очистить кэш, чтобы воспроизвести эту ошибку.

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 голосов
/ 13 февраля 2019

Видимо, пользовательский сеанс не сохраняется, если вы применяете купон.Вы должны сначала добавить продукт или сделать что-то еще, что хранит ваш сеанс.Хотя мы можем сделать это вручную, а именно, создав файл cookie сеанса самостоятельно.

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

Взял меня весь день.Надеюсь, кто-нибудь сможет его использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...