首页 > 解决方案 > 在结帐期间登录时删除以前的购物车项目

问题描述


如果用户在结帐期间登录,我正在尝试删除所有旧购物车项目。

例如:
一。用户几天前添加了 3 个项目

    - 帽
    - 球
    - 钥匙圈

湾。然后他注销了,今天他在购物车中添加了一些要购买的物品。

    - 连帽衫
    - 手机

他在结账时被要求登录,购物车显示 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);

我只希望在从结帐页面登录时删除它们。我也尝试过使用永久链接,但它没有用。
请帮忙。

标签: wordpresswoocommerce

解决方案


推荐阅读