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

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 امتیاز)
پدرام تبریزی:
مطالب مرتبط