function filter_woocommerce_add_to_cart_product_id( $product_id ) { // 判断当前输入是产品ID还是SKU if ( get_post_type( $product_id ) === 'product' ) { return $product_id; // 如果是ID,直接返回 } else { $sku = $product_id; // 否则当作SKU处理 } // 使用WooCommerce函数通过SKU获取产品ID $product_id_by_sku = wc_get_product_id_by_sku( $sku ); // 如果找到了对应的产品ID,则返回它;否则返回原始值(会报错) return ( $product_id_by_sku ) ? $product_id_by_sku : $product_id; } add_filter( 'woocommerce_add_to_cart_product_id', 'filter_woocommerce_add_to_cart_product_id', 10, 1 ); /** * 第一步:创建三个自定义用户角色 */ function add_custom_user_roles() { // 创建“零售客户”角色,基于WooCommerce默认的'customer'角色,并确保其存在 add_role( 'retail_customer', __('零售客户'), array( 'read' => true, ) ); // 创建“企业直接客户”角色 add_role( 'enterprise_customer', __('企业直接客户'), array( 'read' => true, ) ); // 创建“一件代发客户”角色 add_role( 'dropshipping_customer', __('一件代发客户'), array( 'read' => true, ) ); } // 在WordPress初始化时执行创建角色的函数 add_action( 'init', 'add_custom_user_roles' ); /** * 第二步:定义核心函数,在订单完成后根据产品分配用户角色 * 挂钩到 'woocommerce_order_status_completed' 动作 */ function assign_user_role_based_on_purchase( $order_id ) { $order = wc_get_order( $order_id ); // 安全检查:确保获取到的是有效的订单对象 if ( ! is_a( $order, 'WC_Order' ) ) { return; } // 获取下单用户 $user = $order->get_user(); // 如果订单没有关联已注册用户,则退出函数(例如访客下单) if ( empty( $user ) ) { return; } // 定义触发各角色对应的产品ID(请根据你的实际产品ID修改下面的数字) $retail_product_id = 50; // 触发“零售客户”角色的产品ID $enterprise_product_id = 43; // 触发“企业直接客户”角色的产品ID $dropshipping_product_id = 56; // 触发“一件代发客户”角色的产品ID $dropshipping_quantity_threshold = 2; // 触发“一件代发客户”角色所需的最小数量 // 循环遍历订单中的所有商品 foreach ( $order->get_items() as $item ) { $product_id = $item->get_product_id(); $quantity = $item->get_quantity(); // 判断商品ID并分配对应角色 if ( $product_id == $retail_product_id ) { $user->add_role( 'retail_customer' ); } elseif ( $product_id == $enterprise_product_id ) { $user->add_role( 'enterprise_customer' ); } elseif ( $product_id == $dropshipping_product_id && $quantity >= $dropshipping_quantity_threshold ) { // 只有当购买数量达到阈值时,才分配“一件代发客户”角色 $user->add_role( 'dropshipping_customer' ); } } } // 挂钩到订单状态变为“已完成”的时刻 add_action( 'woocommerce_order_status_completed', 'assign_user_role_based_on_purchase' ); 专业级含钴麻花钻头 7.0mm(10支装);2608585892 - 莹虹商贸

专业级含钴麻花钻头 7.0mm(10支装);2608585892

¥176.39

SKU: 2608585892
Category:
品牌:

评价

目前还没有评价

成为第一个“专业级含钴麻花钻头 7.0mm(10支装);2608585892” 的评价者

您的邮箱地址不会被公开。 必填项已用 * 标注

专职客服电话
平台客服邮箱
我们将24小时内回复。
取消
平台QQ客服
平台微信客服
平台微信客服