根据用户的组更改常规价格

时间:2018-01-18 05:00:50

标签: wordpress woocommerce

我正在寻找一种根据用户群体更改产品正常价格的方法。我将批发商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);

1 个答案:

答案 0 :(得分:0)

有一个比这个更好的主意。我应该检查用户的角色。