การเปลี่ยน WooCommerce แสดงราคาตามบทบาทและหมวดหมู่ของผู้ใช้ [ปิด]


13

ฉันต้องการแสดงราคาที่แตกต่างกันตามบทบาทของผู้ใช้ (ผู้ค้าส่งตัวแทนจำหน่าย ฯลฯ ) และตามหมวดหมู่

มีปลั๊กอินการกำหนดราคาแบบไดนามิกที่แสดงส่วนลดเหล่านี้เมื่อมีการเพิ่มรายการลงในรถเข็น แต่ไม่ใช่ในหน้าเว็บ

มีวิธีใช้ตัวกรองหรือการกระทำเพื่อตรวจสอบระดับผู้ใช้ตรวจสอบหมวดหมู่ของรายการแล้วเปลี่ยนราคาแบบไดนามิกหรือไม่

คำตอบ:


18

ใช่มีคุณสามารถใช้woocommerce_get_priceตะขอตัวกรองเพื่อกรองค่าตามบทบาทของผู้ใช้และคืนราคาตามนั้นเช่น:

add_filter('woocommerce_get_price', 'custom_price_WPA111772', 10, 2);
/**
 * custom_price_WPA111772 
 *
 * filter the price based on category and user role
 * @param  $price   
 * @param  $product 
 * @return 
 */
function custom_price_WPA111772($price, $product) {
    if (!is_user_logged_in()) return $price;

    //check if the product is in a category you want, let say shirts
    if( has_term( 'shirts', 'product_cat' ,$product->ID) ) {
        //check if the user has a role of dealer using a helper function, see bellow
        if (has_role_WPA111772('dealer')){
            //give user 10% of
            $price = $price * 0.9;
        }
    }
    return $price;
}

/**
 * has_role_WPA111772 
 *
 * function to check if a user has a specific role
 * 
 * @param  string  $role    role to check against 
 * @param  int  $user_id    user id
 * @return boolean
 */
function has_role_WPA111772($role = '',$user_id = null){
    if ( is_numeric( $user_id ) )
        $user = get_user_by( 'id',$user_id );
    else
        $user = wp_get_current_user();

    if ( empty( $user ) )
        return false;

    return in_array( $role, (array) $user->roles );
}

ฉันลองสิ่งนี้ เพิ่มรหัสนี้ใน functions.php ใช้งานไม่ได้

1
ขอบคุณสำหรับคำตอบที่ยอดเยี่ยมนี้ ด้วยเหตุผลบางอย่างราคาชุดรูปแบบของฉันไม่เปลี่ยนแปลงโดยใช้ตัวกรองนี้ คุณคุ้นเคยกับปัญหานี้หรือไม่?
Robbert

ใช้งานได้กับผลิตภัณฑ์แบบง่ายเท่านั้น
Klevis Miho

0

คุณสามารถลองราคาเฉพาะลูกค้าสำหรับ WooCommerce ด้วยปลั๊กอินนี้คุณสามารถเพิ่มราคาแตกต่างกันสำหรับผู้ใช้ที่ลงทะเบียน

ขณะนี้ปลั๊กอินอยู่ในช่วงเริ่มต้น แต่จะมีการอัปเดตเร็ว ๆ นี้เพื่อสนับสนุนคุณสมบัติเพิ่มเติมเช่นราคาตามหมวดหมู่ผลิตภัณฑ์


ปลั๊กอินนี้สามารถลดราคาผลิตภัณฑ์เท่านั้น ถ้าคุณต้องการขึ้นราคา
Klevis Miho
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.