Удалить предыдущие элементы корзины при входе в систему во время оформления заказа - PullRequest
0 голосов
/ 21 февраля 2019


Я пытаюсь удалить все старые элементы корзины, если пользователь входит в систему во время оформления заказа.

Например:
a.Пользователь добавляет 3 элемента несколько дней назад

- Кепка
- Шар
- Брелок

b.Затем он вышел из системы и сегодня добавляет несколько предметов в корзину для покупки.

- Толстовка с капюшоном
- Мобильный телефон

Его просятдля входа во время оформления заказа и в корзине 4 товара.

- Кепка
- Шар
- Брелок
- Толстовка с капюшоном
- Мобильный телефон

Как показать только два последних продукта и удалить старые.

- Толстовка с капюшоном
- Мобильный телефон



Я добавил следующий код в functions.php, но он удаляет все ранее добавленные продукты со всех страниц.

function clear_persistent_cart_after_login( $user_login, $user ) {
    $blog_id = get_current_blog_id();

    if ( metadata_exists( 'user', $user->ID, '_woocommerce_persistent_cart_' . $blog_id ) ) {
        delete_user_meta( $user->ID, '_woocommerce_persistent_cart_' . $blog_id );
    }
}
add_action('wp_login', 'clear_persistent_cart_after_login', 10, 2);

Я хочу, чтобы они удалялись только при входе со страницы оформления заказа.Я также пытался использовать постоянную ссылку, но это не сработало.
Пожалуйста, помогите.

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