تغییر مسیر کاربر بعد از ورود یا ثبت نام در وردپرس

2.8 / 5. تعداد رای: 4

تغییر مسیر کاربر بعد از ورود یا ثبت نام در وردپرس
تغییر مسیر کاربر بعد از ورود یا ثبت نام در وردپرس

ممکن است شما بخواهید کاربران پس از ورود به سایت شما به یک صفحه خاص هدایت و یا به‌اصطلاح ریدایرکت شوند، حتی ممکن است شما بخواهید به نسبت نقش کاربری هر یک از آن‌ها را به یک صفحه جداگانه بفرستید، برای تغییر مسیر کاربر بعد از ورود یا ثبت نام در وردپرس نیاز به یک راه‌حل اساسی دارید.

اگر شما بتوانید یک صفحه سفارشی برای کاربران خود ایجاد کنید، می‌توانید با ایجاد یک تغییر مسیر، به‌راحتی آن‌ها را به صفحه موردنظر خود هدایت کنید؛ به این صورت که کاربر هنگام ثبت‌نام در سایت شما، اگر بر روی عضویت کلیک کند، به آن صفحه ریدایرکت خواهد شد. امروز در این مقاله آموزشی به شما آموزش خواهیم داد که چگونه کاربران خود را پس از ورود موفقیت‌آمیز به سایت، به یک صفحه دیگر منتقل کنید.

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

خب همان‌طور که می‌دانید در حال حاضر سایت‌های بسیار زیادی با استفاده از سیستم مدیریت محتوای وردپرس در سراسر دنیا راه‌اندازی شده است که تعداد چشمگیری از آن‌ها چندکاربره می‌باشند.

در این دسته از وب‌سایت‌ها مانند، فروشگاه‌های آنلاین، وبلاگ‌هایی که دارای چند نویسنده یا حتی سایت‌هایی که دارای نقش‌های کاربری مختلفی هستند، کاربر برای دسترسی به جزئیات حساب کاربری خود باید در سایت لاگین کنند و عضو شوند؛ اگر این سایت‌ها از افزونه‌های ورود و عضویت استفاده کنند، می‌توانند کاربران خودشان را به یک صفحه حساب کاربری سفارشی‌شده هدایت کنند.

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

بنابراین اگر می‌خواهید کاربران خود را به یک صفحه سفارشی و خاص منتقل کنید، به شما پیشنهاد می‌کنم این مقاله را دنبال کنید، چراکه این موضوع می‌تواند تا حد بسیار زیادی در تجربه کاربری نیز مؤثر باشد.

افزونه تغییر مسیر کاربر بعد از ورود یا ثبت نام

این روش یکی از ساده‌ترین روش‌هایی است که شما می‌توانید برای ریدایرکت کردن بر اساس نقش کاربری از آن استفاده کنید. شما برای استفاده از این راه‌حل نیاز به یک افزونه دارید که پیشنهاد ما استفاده از پلاگین Peter’s Login Redirect می‌باشد. این افزونه کاملاً رایگان است و به شما این امکان را می‌دهد که بدون پرداخت هیچ هزینه‌ای از تمامی ویژگی‌های آن استفاده کنید.

پلاگین Peter’s Login Redirect
پلاگین Peter’s Login Redirect

شما این امکان را دارید که این پلاگین را از طریق سایت WordPress.org و یا مخزن وردپرس دانلود و بر روی سایت خود نصب کنید. برای نصب افزونه نیز می‌توانید مقاله آموزشی نصب افزونه در وردپرس را مشاهده کنید.

بعدازاینکه افزونه را روی سایت خود نصب و آن را فعال کردید، باید پیشخوان» تنظیمات» Login/logout Redirects بروید، در اینجا شما می‌توانید افزونه را تنظیم کنید. بعد از طی کردن این مسیر، یک صفحه جدید برای شما باز خواهد شد که دارای چندین بخش مختلف است؛ هر یک از این بخش‌ها به شما این امکان را می‌دهد که برای موقعیت‌های مختلف تغییر مسیرهای ورودی را تنظیم کنید، که ما در اینجا تمامی آن‌ها را برای شما بررسی خواهیم کرد:

تغییر مسیر کاربران خاص

بخش اولی که در اینجا مشاهده می‌کنید Specific Users می‌باشد. این گزینه زمانی برای شما کارایی دارد که بخواهید یک سری از کاربران خاص را به صفحات موردنظر خود ریدایرکت کنید.

روند کار این گزینه بسیار راحت است و تنها کاری که شما باید انجام دهید این است که در قسمت Add، کاربران موردنظر خود را اضافه کنید و پس‌ازآن در فیلدهای بعدی URLهای موردنظر را برای ورود و انتقال کاربر جایگذاری کنید.

بعدازاینکه تمامی اطلاعات خواسته‌شده را وارد کردید باید روی گزینه Add Username Rule که در پایین این فیلدها قرار دارد، کلیک کنید تا تغییرات موردنظر شما روی سایت اعمال شود.

تنظیمات Specific users
تنظیمات Specific Users

تغییر مسیر نقش کاربری خاص

گزینه بعدی که مشاهده می‌کنید، Specific Roles می‌باشد. این قسمت نیز شامل سه بخش مختلف است. اگر شما می‌خواهید یک نقش کاربری خاص به یک صفحه دیگر ریدایرکت شود باید از این قسمت استفاده کنید.

به‌عنوان‌مثال فرض کنید که می‌خواهید نویسندگان سایتتان با رفتن به صفحه نخست، به یک صفحه مربوط به ویرایش نوشته ریدایرکت شوند؛ در این صورت شما باید در قسمت Add، نقش کاربری آن‌ها را انتخاب کنید و سپس URL صفحات ورود و صفحه ریدایرکت شده را نیز وارد کنید و در آخر به پایین صفحه اسکرول کنید و Add Username Rule را انتخاب نمایید.

توجه داشته باشید که در فیلد ADD تمامی نقش‌های کاربری برای شما جایگذاری شده است و شما فقط باید یکی از آن‌ها را انتخاب نمایید.

تغییر مسیر کاربران بر اساس سطح کاربری

Specific Levels درواقع برای مواردی است که شما می‌خواهید براساس سطح و قابلیت‌هایی که کاربران سایت دارند، آن‌ها را طبقه‌بندی کنید. برای این کار باید از فیلد اول، قابلیت موردنظر خود را وارد کنید و پس‌ازآن نیز URL مربوط به صفحه مبدأ و مقصد را وارد نمایید.

تغییر مسیر کاربران دیگر…

گزینه بعدی که مشاهده می‌کنید، همان‌طور که از اسم آن مشخص است برای تمامی کاربران سایت شما است. درواقع اگر شما بخواهید تمامی کاربران سایت فارغ از نقش کاربری که دارند، به یک صفحه خاص ریدایرکت شوند باید از این گزینه استفاده کنید.

تنظیمات  All Other Users در افزونه
تنظیمات All Other Users در افزونه

به بیان ساده این گزینه برای تغییر مسیر همه کاربران در سایت‌های وردپرسی استفاده می‌شود. روند کار این گزینه نیز مشابه موارد قبلی است و شما باید URL هر دو صفحه را در این بخش وارد کنید و در انتها بر روی Update کلیک کنید.

تغییر مسیر کاربر بعد از ثبت نام در وردپرس

این گزینه برای تغییر دادن مسیر کاربر بعد از ثبت‌نام در سایت وردپرسی شما است. همان‌طور که می‌دانید در سایت‌های وردپرسی پس از ورود و لاگین کردن، کاربر به صفحه ورود مجدد خواهد رفت؛ اما شما با استفاده از این افزونه می‌توانید کاری کنید که کاربر پس از عضو شدن در سایت به یک صفحه خاص که مدنظر شما است، انتقال یابد.

تغییر مسیر کاربر بعد از ورود
تغییر مسیر کاربر بعد از ورود

مثلاً ممکن است شما برای اینکه تجربه کاربری را بهبود ببخشید یک صفحه خوش‌آمدگویی برای کاربران جدید بسازید و بخواهید کاربر به‌محض لاگین کردن به این صفحه تغییر مسیر دهید، برای این کار تنها کاری که باید انجام دهید این است که در این قسمت URL صفحه موردنظر خود را وارد کنید و در انتها Update را انتخاب کنید.

تنظیمات کلی افزونه

بخش آخری که در این صفحه قرار گرفته شده است، مربوط به سفارشی کردن تنظیمات افزونه است. توجه داشته باشید که تغییراتی که در این صفحه اعمال می‌شود از اهمیت زیادی برخوردار است و شما نباید به افراد دیگری این امکان را دهید که تغییراتی را در این بخش انجام دهند.

سفارشی کردن تنظیمات افزونه
سفارشی کردن تنظیمات افزونه

به‌صورت پیش‌فرض کاربرانی که امکان تغییر دسته‌ها را در سایت شما داشته باشند می‌توانند در تنظیمات این پلاگین نیز تغییراتی را اعمال کنند؛ ازاین‌رو به شما پیشنهاد می‌کنیم گزینه Permission Level Required To Edit Redirect URLs را روی Install_Plugins قرار دهید تا فقط کاربرانی که در سایت شما نقش سرپرست را دارند امکان اعمال تغییرات در این بخش را داشته باشند.

در وهله آخر نیز روی گزینه Update کلیک کنید تا همه تغییرات در سایت شما اعمال شود.

عیب‌یابی مشکلات ورود به سیستم در وردپرس

در برخی مواقع ممکن است شما هنگام تغییر مسیر یا ریدایرکت کردن کاربر، با یک سری مشکلات مواجه شوید ازاین‌رو به شما پیشنهاد می‌کنیم تنظیمات پیوند یکتا را در لوکال هاست خود به‌روزرسانی کنید.

درواقع یکی از مواردی که ممکن است برای عیب‌یابی مشکلات ریدایرکت کردن کاربر در سایت‌های وردپرسی مفید واقع شود این است که تنظیمات پیوند یکتا را به‌روزرسانی کنید. برای این کار باید به پیشخوان » تنظیمات» پیوند یکتا بروید و بدون اعمال هیچ تغییری، بر روی گزینه ذخیره تغییرات کلیک کنید.

 به‌روزرسانی  تنظیمات پیوند یکتا
به‌روزرسانی تنظیمات پیوند یکتا

شاید به نظر شما این مورد اهمیت زیادی نداشته باشد، اما شما باید بدانید که این مورد، پیوند یکتای وردپرس را تازه می‌کند و می‌تواند برای رفع مشکلات ریدایرکت کردن در وردپرس مفید باشد.

امیدواریم این مقاله برای تغییر مسیر کاربران سایت شما مفید واقع شده باشد. موفق و پیروز باشید. 🙂

نکته خاصی هست که این مقاله رو تکمیل‌تر کنه؟

  1. U41062 ۱۴ آذر ۱۴۰۱

    سلام و خسته نباشید ویژه خدمت شما جناب حسینی راد عزیزم
    مهندس من میخوام کاربر بعد از ورود به حساب کاربری به همون صفحه ای که در حال مشاهده بوده ریدایرکت بشه. از میهن پنل استفاده میکنم.
    چجوری باید این قابلیت را فعال کنم؟
    یک قطعه کد هم پیدا کردم داخل functions.php قالب گذاشتم ولی عمل نمیکنه:

    if ( (isset($_GET[‘action’]) && $_GET[‘action’] != ‘logout’) || (isset($_POST[‘login_location’]) && !empty($_POST[‘login_location’])) ) {
    add_filter(‘login_redirect’, ‘my_login_redirect’, 10, 3);
    function my_login_redirect() {
    $location = $_SERVER[‘HTTP_REFERER’];
    wp_safe_redirect($location);
    exit();
    }
    }

    اگر راهنمایی کنید ممنونتون میشم.
    با آرزوی موفقیت و عمر با عزت برای شما و تیمتان.

    • Reza Rad رضا راد ۱۶ آذر ۱۴۰۱

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

      • U41062 ۱۶ آذر ۱۴۰۱

        سلام مجدد
        یعنی هیچ راهی نداره که بشه این مورد را پیاده سازی کرد روی سایت؟
        سپاس

        • Reza Rad رضا راد ۱۷ آذر ۱۴۰۱

          سلام بله با تغییر کدهای پلاگین توسط یک برنامه نویس و استفاده از ابزارک ورود میهن پنل میشه انجامش داد.

  2. U26382 ۳۱ خرداد ۱۳۹۹

    سلام خسته نباشید چگونه میتوان بعد از لاگین در سایت منو ورود و ثبت نام به پنل کاربری تغییر کند؟

  3. کاربر مهمان ۲۶ دی ۱۳۹۸

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

    • تیم پشتیبانی تیم پشتیبانی ۲۶ دی ۱۳۹۸

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

  4. کاربر مهمان ۲۱ دی ۱۳۹۸

    با سلام
    متشکرم از میهن وردپرس بابت تهیه و ارائه این مقاله
    بسیار کاربردی بود و من به دنبال چنین چیزی بودم!

  5. U11963 ۲۱ دی ۱۳۹۸

    سلام
    آیا این امکان وجود داره که با این افزونه به کاربر بگیم قبل از خرید از فروشگاه ووکامرس باید حتما از طریق نام کاربری خودش وارد سایت بشه و تا وارد نشده اجازه خرید نده؟
    و بعد از اینکه با نام کاربری وارد ش، اجازه بده به فروشگاه بره و خرید کنه؟

    • تیم پشتیبانی تیم پشتیبانی ۲۱ دی ۱۳۹۸

      با سلام
      برای این منظور از افزونه میهن پنل باید استفاده بفرمایید

    • کاربر مهمان ۲۱ دی ۱۳۹۸

      با سلام
      فکر میکنم شما باید عضویت اجباری برای خرید رو فعال کنید که برای این امکان به پیشخوان سایتتون >ووکامرس >پیکربندی >حساب کاربری مراجعه کنید و تیک ” اجازه به مشتریان برای ثبت سفارش بدون نیاز به نام نویسی. ” رو بردارید.
      همچنین در صورتی که میخواهید کاربر بتواند در صفحه checkout لاگین کند تیک ” اجازه به مشتریان برای ایجاد حساب کاربری در هنگام تسویه حساب ” رو بزنید.