ریدایرکت کاربر وردپرس پس از ورود به سایت + انتقال به صفحه بعد عضویت

Redirect چیست و ریدایرکت کاربر وردپرس چگونه صورت میگیرد؟

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

ریدایرکت کاربر وردپرس پس از ورود به سایت + انتقال به صفحه بعد عضویت

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

  1. هدایت کاربر به صفحه دلخواه پس از ثبت نام
  2. انتقال کاربر به برگه دلخواه پس از ورود به سایت
  3. ریدایرکت کاربر به صفحه ای که قبل از ورود به سایت در حال مشاهده آن بوده است.

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

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

function iranthemes_register_redirect(){ return '/my-page'; }
add_filter('registration_redirect','iranthemes_login_redirect');

جهت تعیین برگه دلخواه در خط اول عبارت my-page را به آدرس صفحه مورد نظر تغییر دهید.

انتقال به صفحه دلخواه بعد از ورود به سایت

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

function iranthemes_login_redirect(){ return '/my-page'; }
add_filter('login_redirect','iranthemes_login_redirect');

کد انتقال کاربر به صفحه قبل از ورود به سایت

فرض کنید کاربر در حال مطالعه یکی از نوشته های سایت است و ما محدودیتی ایجاد کرده ایم تا کاربر برای مطالعه ادامه نوشته باید وارد سایت شود، در حالت عادی پس از ورود به سایت به پیشخوان وردپرس هدایت میشویم، با استفاده از کد زیر کاری میکنم که کاربر پس از ورود به وردپرس به برگه قبلی که در حال مشاهده آن بود ریدایرکت شود. (کد توسط Tyler Longren معرفی شده است.)

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(); }}

در صورتیکه سوالی برایتان ایجاد شده در بخش دیدگاه های همین مطلب مطرح کنید.

4.6/5 - (10 امتیاز)
بازدیدکنندگانی که این مطلب را مطالعه کرده اند، از مطالب زیر نیز استقبال کرده اند
دیدگاهی بنویسید
5

  1. مهدی
    14 اسفند 1397 ساعت 20:49

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

  2. ramin
    18 آبان 1396 ساعت 15:35

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

    • رضا کیانوش
      18 آبان 1396 ساعت 18:21

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

  3. ramin
    16 آبان 1396 ساعت 23:09

    این کد رو کجای سایت باید بذاریم دقیقا من تازه کارم ممنون میشم راهنمایی کنین کد آخر منظورمه

    • رضا کیانوش
      17 آبان 1396 ساعت 05:26

      سلام، در توضیحات مطلب نحوه استفاده از کدها دقیقا توضیح داده شده، کدهایی که باید در فانکشن قالب وردپرس فایل functions.php قرار بگیرن رو بهتره در انتها یا ابتدای فایل فانکشن بزارید.