رفتن به مطلب

کد فانکشن تعیین محدودیت خرید برای نوع کاربر


پست های پیشنهاد شده

با سلام خدمت تمامی وردپرس کاران امروز میخوام یه کد کاربردی رو معرفی کنم که توسط بنده تکمیل تر شده (حالا اینطوری بگم بهتره) ، با استفاده از این کد میتوانید برای نوع کاربر خود محدودیت خرید ایجاد کنید فرض کنید سه نوع کاربر "کاربر عادی" , "کاربر ویژه" و "مدیر کل" دارید حالا مدیر کل که هیچ همینطوری نوشتم ولی به میخواهیم به اون دو نوع کاربر محدودیت خرید محصول اعمال کنیم

add_filter( 'woocommerce_update_cart_validation', 'only_five_items_allowed_cart_update', 10, 4 );
function only_five_items_allowed_cart_update( $passed, $cart_item_key, $values, $updated_quantity ) {

    $cart_items_count = WC()->cart->get_cart_contents_count();
    $original_quantity = $values['quantity'];
    $total_count = $cart_items_count - $original_quantity + $updated_quantity;
    function display_user_roles_1(){
        $user_id1 = get_current_user_id();
        $user_info1 = get_userdata( $user_id1 );
        $user_roles1 = implode(', ', $user_info1->roles);
        return $user_roles1;
    }
    if (!display_user_roles_1() == 'normal-account') {
        if( $cart_items_count > 5 || $total_count > 5 ){
            // Set to false
            $passed = false;
            // Display a message
            wc_add_notice( __( "خرید بیشتر از 5 محصول برای کاربران عادی مجاز نمیباشد", "woocommerce" ), "error" );
        }
        return $passed;
    }
    if (!display_user_roles_1() == 'special-account') {
        if( $cart_items_count > 15 || $total_count > 15 ){
            // Set to false
            $passed = false;
            // Display a message
            wc_add_notice( __( "خرید بیشتر از 15 محصول برای کاربران ویژه مجاز نمیباشد", "woocommerce" ), "error" );
        }
        return $passed;
    }
    if (display_user_roles_1() == 'administrator') {
        if( $cart_items_count > 20 || $total_count > 20 ){
            // Set to false
            $passed = false;
            // Display a message
            wc_add_notice( __( "خرید بیشتر از 20 محصول برای مدیر کل هم مجاز نمیباشد", "woocommerce" ), "error" );
        }
        return $passed;
    }
}

به شکل بالا عمل خواهید کرد ، دقت کنید که در شرط های بالا display_user_roles_1() نشان دهنده نوع کاربر هست

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...