Я пытаюсь удалить все старые элементы корзины, если пользователь входит в систему во время оформления заказа.
Например:
a.Пользователь добавляет 2 элемента несколько дней назад
- Кепка
- Шар
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);
Я хочу, чтобы они удалялись только при входе со страницы оформления заказа.Я также пытался использовать постоянную ссылку, но это не сработало.
Пожалуйста, помогите.