نحوه تغییر مسیر به سبد خرید پس از ورود به ووکامرس

برای افزایش فروش در سایت ووکامرس خود، باید کاربران را پس از ورود به سبد خرید هدایت کنید تا خرید کنند. این یک گام اساسی در بهبود تبدیل سبد خرید رها شده شما است.

در این پست قصد دارم با شما به اشتراک بگذارم که چگونه می توانید پس از ورود کاربران ووکامرس به سبد خرید تغییر مسیر دهید.

این به شکل یک قطعه کد است که باید به فایل توابع یا فایل های افزونه سفارشی اضافه شود تا کاربر پس از ورود به سبد خرید هدایت شود.

تغییر مسیر ووکامرس

برای تغییر مسیر کاربر بر اساس نقش کاربر، می توانید این آموزش قبلی را بررسی کنید –

همچنین می‌توانید نحوه پرداخت یا پرداخت را از این پست بیاموزید – . برای تغییر مسیر کاربر پس از ورود به سیستم، باید یک قطعه کد به functions.php اضافه کنیم که به woocommerce_login_redirect متصل می‌شود و تابع callback کدی را برای تغییر مسیر به URL سفارشی خواهد داشت.

ووکامرس پس از ورود به سبد خرید تغییر مسیر دهید

به طور پیش فرض هر بار که یک کاربر وارد ووکامرس می شود، به صفحه حساب من هدایت می شود. این ممکن است راه خوبی برای دریافت نمای کلی از جزئیات مربوط به حساب و سفارش آنها باشد.

با این حال، ممکن است بخواهید یک صفحه حساب سفارشی داشته باشید تا کاربران پس از ورود به سیستم از ورود پیش فرض ووکامرس هدایت شوند.

همچنین ممکن است بخواهید این رفتار پیش‌فرض را تغییر دهید تا کاربر را به صفحه سبد خرید برای بهبود نرخ تبدیل یا به هر صفحه دیگری که تجربه کاربر را بهبود می‌بخشد هدایت کنید.

در این آموزش، ما بر روی ایجاد تغییر مسیر ورود به سبد خرید برای کاربران ووکامرس تمرکز خواهیم کرد. ابتدا باید قلاب فیلتری را که روی woocommerce_login_redirect قلاب می‌شود به صورت زیر ایجاد کنید:

add_filter( 'woocommerce_login_redirect', 'njengah_login_redirect_to_cart' );

مرحله دوم این است که یک تابع پاسخ به تماس ایجاد کنید که ابتدا بررسی می کند که آیا زمانی که می خواهیم وارد شوید در صفحه پرداخت هستیم یا خیر، سپس URL ورود به سیستم را پس از تغییر پارامتر $redirect برگردانیم.

قطعه کد برای تغییر مسیر به سبد خرید پس از ورود باید به صورت زیر باشد:

/**
 * Redirect to cart after login.
 *
 * @param $redirect
 *
 * @return false|string
 
 */
add_filter( 'woocommerce_login_redirect', 'njengah_login_redirect_to_cart' ); 
 
function njengah_login_redirect_to_cart( $redirect ) {
    
    $redirectPageID = url_to_postid($redirect );
    $checkoutPageID = wc_get_page_id('checkout');
    
    //بررسی کنید که آیا کاربر از پرداخت وارد شده است یا خیر
    
    if( $redirectPageID == $checkoutPageID ){
        return $redirect;
    }
    
    //مشتری را به صفحه سبد خرید هدایت کنید
 
    return wc_get_page_permalink( 'cart' );
}

این کد را به functions.php موضوع ووکامرس خود اضافه کنید و تغییرات را ذخیره کنید. کاربران شما پس از ورود با موفقیت به صفحه سبد خرید هدایت می شوند.

می‌توانید این قطعه کد را بیشتر سفارشی کنید تا به کاربران اجازه دهید بر اساس نقش‌های کاربری‌شان هدایت شوند. می توانید یک پارامتر دوم را به تابع callback اضافه کنید و پارامتر باید همان باشد $ user.

همچنین می‌توانید این تابع را به هر URL دیگری که می‌خواهید هنگام ورود کاربر به آن تغییر مسیر دهید، سفارشی کنید.

/**
 * Redirect users to custom URL based on their role after login
 *
 * @param string $redirect
 * @param object $user
 * @return string
 */
function njengah_redirect_user_by roles( $redirect, $user ) {
    // اولین نقش از همه نقش های اختصاص داده شده به کاربر را دریافت کنید
    $role = $user->roles[0];

    $dashboard = admin_url();
    $myaccount = get_permalink( wc_get_page_id( 'myaccount' ) );
    $cartPage  = wc_get_page_permalink( 'cart' );
    
   // $pagebyID= get_permalink( int PAGEID );

    if( $role == 'administrator' ) {
        //مدیران را به داشبورد هدایت کنید
        $redirect = $dashboard;
    } elseif ( $role == 'shop-manager' ) {
        //مدیران فروشگاه را به داشبورد هدایت کنید
        $redirect = $dashboard;
    } elseif ( $role == 'editor' ) {
        //ویرایشگرها را به داشبورد هدایت کنید
        $redirect = $dashboard;
    } elseif ( $role == 'author' ) {
        //نویسندگان را به داشبورد هدایت کنید
        $redirect = $dashboard;
    } elseif ( $role == 'customer' || $role == 'subscriber' ) {
        //مشتریان و مشترکین را به صفحه «سبد خرید» هدایت کنید
        $redirect = $cartPage;
    } else {
        //هر نقش دیگری را به صفحه بازدید شده قبلی یا در صورت عدم دسترسی به خانه هدایت کنید
        $redirect = wp_get_referer() ? wp_get_referer() : home_url();
    }

    return $redirect;
}
add_filter( 'woocommerce_login_redirect', 'njengah_redirect_user_by roles', 10, 2 );

 

نتیجه

در این پست روش تغییر مسیر به سبد خرید پس از ورود در ووکامرس بدون استفاده از افزونه با افزودن یک قطعه کد به فایل functions.php شما را بیان کرده ایم. این قطعه کد آزمایش شده است و در چندین تم ووکامرس کار می کند و همچنین باید در یک فایل افزونه ووکامرس سفارشی کار کند.

دیدگاه‌ها و پرسش‌ها

برای ارسال نظر نیاز است تا ابتدا وارد سایت شوید.

هیچ نظری ارسال نشده است.

در این مقاله قصد داریم تا درباره نحوه تغییر مسیر به سبد خرید پس از ورود به ووکامرس صحبت کنیم.


قیمت آموزش
رایگان
نوع دسترسی
رایگان

این مقاله در حال حاضر تنها به روش رایگان در دسترس می باشد.

ناصر خالدی
مدرس دوره

ناصر خالدی

مهندس شبکه, امنیت, برنامه نویسی تلفن های هوشمند, طراح وب سایت و متخصص هوش مصنوعی

گفتگوی برنامه نویسان

بخشی برای حل مشکلات برنامه‌نویسی و مباحث پیرامون آن

مقالات پیشنهادی

جاوا اسکریپت

جاوا اسکریپت یک زبان پویا و محبوب مبتنی بر شیء, داینامیک و مفسری می باشد. این زبان برای برنامه نویسی سمت سرور و کلاینت استفاده میشود که ...


۸۶۷
۰
۱۳ آذر ۱۳۹۹

هک و امنیت

در تعریف کلی این واژه می توان گفت که به پیدا کردن راه های نفوذ به یک حریم شخصی و استفاده غیر مجاز از آن را هک می نامیم. هدف از هک می تواند ...


۹۵۴
۰
۱۳ آذر ۱۳۹۹

اندروید

اندروید یک سیستم عامل می باشد که توسط گوگل توسعه داده میشود, این سیستم عامل بر پایه نسخه ی اصلاح شده ی هسته ی لینوکس و دیگر نرم افزار های متن باز طراحی شده است و ...


۱۰۵۴
۰
۲۹ آبان ۱۳۹۹

هوش مصنوعی

هوش مصنوعی یا هوش ماشینی, به هوشمندی نشان داده شده توسط ماشین در شرایط مختلف گفته میشود که مقابل هوش طبیعی در انسان ها قرار دارد که ...


۸۶۰
۰
۱۱ آذر ۱۳۹۹

Fatal error: Uncaught wfWAFStorageFileException: Unable to verify temporary file contents for atomic writing. in /home/clonerco/public_html/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php:52 Stack trace: #0 /home/clonerco/public_html/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php(659): wfWAFStorageFile::atomicFilePutContents('/home/clonerco/...', '<?php exit('Acc...') #1 [internal function]: wfWAFStorageFile->saveConfig('livewaf') #2 {main} thrown in /home/clonerco/public_html/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php on line 52