wordpress - Woocommerce - 如果在结账时登录,则删除所有旧购物车商品

标签 wordpress woocommerce


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

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

    - Cap
    - Ball

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

    - Hoodie
    - Mobile Phone

他被要求在结账时登录,购物车显示 4 件产品。

    - Cap
    - Ball
    - Hoodie
    - Mobile Phone

如何只显示最新的两个产品并删除旧的。

    - Hoodie
    - Mobile Phone



我将以下代码添加到我的 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);

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

最佳答案

  1. 将此添加到 functions.php:
add_filter( 'woocommerce_persistent_cart_enabled', '__return_false' );
  1. 注销并重新登录

  2. function.php 中删除该行

关于wordpress - Woocommerce - 如果在结账时登录,则删除所有旧购物车商品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54783343/

相关文章:

php - 在 WooCommerce 中添加到购物车后重新标记 "add to cart"按钮

html - 如何在同一行制作html表格? WordPress,woocommerce

image - wordpress 是否应该通过 https 自动加载图像?

php - 根据 Woocommerce 中的特定城市显示货到付款 (COD)

php - Archive-Product.php(主商店页面)的 WooCommerce 模板覆盖不起作用

database - WordPress 网站的字符问题

php - 上个月Paypal的IPN有没有变化?

mysql - Wordpress 查询错误的数据库

php - WordPress旧版本安装

php - 在 Woocommerce 中使用 wc_dropdown_variation_attribute_options 列出产品变体