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

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

Пример

Пользователь x вошел в систему и добавил товар в корзину.

2 Bags

Пользователь x вышел из системы через некоторое время и добавил продукт в корзину без входа в систему

1 Tshirt

Во время оформления заказа, когда его просят войти, вот как выглядит его корзина

2 Bags
1 Tshirt

Это то, что я хочу

1 Tshirt


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

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);

Я попытался проверить url, но он не работает

function clear_persistent_cart_after_login( $user_login, $user ) {
  $current_url = get_permalink();
  if($current_url  == "http://website.com/checkout/"){
       $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);

Я нашел статьи, связанные с этой темой, но из-за своих базовых знаний по woocommerce я не могу их использовать.
1. Очистить постоянные корзины для клиентов (пользователи зарегистрировались более 30 дней назад)
2. Связанная проблема, но не совсем

Любая помощь приветствуется

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