我正在寻找一种根据用户群体更改产品正常价格的方法。我将批发商A,批发商B和批发商C作为我的团队。
因此,每当客户登录并检出产品时,他将看到与属于另一个组的其他用户不同的价格集。请检查我的方法是否正确?
function change_product_price( $price ) {
if ( class_exists( 'Groups_Group' ) && class_exists( 'Groups_User' ) ) {
if ( $user_id = get_current_user_id() ) {
$user = new Groups_User( $user_id );
if ( $group = Groups_Group::read_by_name( 'A' ) ) {
if ( $user->is_member( $group->group_id ) ) {
$price = get_post_meta( get_the_ID(), '_a_price_field', true );
}
} else if ( $group = Groups_Group::read_by_name( 'B' ) ) {
if ( $user->is_member( $group->group_id ) ) {
$price = get_post_meta( get_the_ID(), '_b_price_field', true );
}
} else if ( $group = Groups_Group::read_by_name( 'C' ) ) {
if ( $user->is_member( $group->group_id ) ) {
$price = get_post_meta( get_the_ID(), '_c_price_field', true );
}
}
}
}
return $price;
}
add_filter( 'woocommerce_cart_item_price', 'change_product_price', 10, 2);
答案 0 :(得分:0)
有一个比这个更好的主意。我应该检查用户的角色。