در برخی مواقع، نیاز است تا لینک بخش های مختلف سایت را به لینک دیگری تغییر دهیم تا بازدیدکننگان را به مکان دیگری منتقل شوند. به همین دلیل مهم است تا با انواع ریدایرکت ها آشنا شده و بدانید برای چه مواردی استفاده می شوند.
در این مقاله نحوه تغییر لینک را با استفاده از افزونه های رایگان وردپرس توضیح داده و همچنین با مفاهیم مختلف آشنا می شویم.
تغییر مسیر URL چیست؟
تغییر مسیر URL به شما امکان می دهد تا بازدیدکننگان و ربات ها را از یک URL در سایت خود به URL دیگر در همان سایت منتقل کنید.
برای مثال، شما یک نوشته وبلاگ با آدرس yoursite.com/best-plugins-2020 نوشته اید و حالا می خواید به آدرس yoursite.com/best-plugins-2021 تغییر دهید. با استفاده از تغییر مسیر URL می توانید آن را طوری تنظیم کنید که هر کاربری آدرس اول را باز کند، به صورت خودکار به آدرس دوم منتقل شود.
این روش به شما کمک می کند تا کاربران تجربه بهتری از بازدید سایت شما داشته باشند و با خطای 404 مواجه نشوند.
تغییر مسیر ها برای بهینه سازی موتور های جستجو (SEO) نیز مهم هستند. زیرا به شما این امکان را می دهند تا رتبه ها و لینک های خود را حفظ کنید. به عنوان مثال در لینک best-plugins-2020 شما لینک های زیادی از سایت های دیگر دریافت کرده اید. حالا می خواهید لینک best-plugins-2021 را جایگزین کنید، اگر تغییر مسیر نداده باشید، با تغییر URL مزیت تمام آن لینک ها را از دست خواهد رفت. اما با تغییر مسیر، می توانید آن لینک ها را حفظ کنید.
برای چه مواردی از تغییر مسیر URL استفاده کنیم؟
- تغییر بخشی از URL – هر زمان که URL یک نوشته یا صفحه در وردپرس را تغییر دهید، برای جلوگیری از خطای 404 و بهینه سازی SEO باید یک تغییر مسیر تنظیم کنید.
- محتوای خراب را رفع کنید – اگر خطای 404 زیادی به یک URL خاص دارید، می توانید با هدایت مجدد، بازدیدکننگان را به محتوای مورد نظر منتقل کنید.
- دامنه خود را تغییر داده اید – اگر نام دامنه خود را تغییر داده اید، باید یک تغییر مسیر تنظیم کنید تا بازدیدکنندگان به دامنه جدید منتقل شوند.
- انتقال از HTTP به HTTPS – هنگام نصب گواهی SSL باید یک تغییر مسیر تنظیم کنید. با این کار مطمئن می شوید تا تمامی بازدیدکنندگان به نسخه امن HTTPS سایت شما دسترسی دارند.
- استفاده از www یا بدون www – اگر دامنه شما به صورت www.yoursite.com می باشد، می توانید با تغییر مسیر به صورت yoursite.com نشان دهید. (یا بالعکس)
- ایجاد لینک های زیبا – تغییر مسیر ها می تواند به شما در ایجاد لینک های داخلی یا خارجی زیبا کمک کند. به عنوان مثال بسیاری از سایت های همکاری در فروش، لینک های خود را به صورت yoursite.com/go/affiliate-offer نمایش می دهند. این کار توسط تغییر مسیر انجام شده است. همچنین می توانید از سایت های کوتاه کننده لینک استفاده کنید.
انواع مختلف تغییر مسیر URL و زمان استفاده از آنها
انواع مختلفی از تغییر مسیر ها وجود داشته که هر کدام به همراه یک کد مشخص قرار دارند. همه تغییر مسیر ها عملکرد یکسانی داشته (ارسال ترافیک از یک مکان به مکان دیگر)، اما کد هر کدام، اطلاعات اضافی در مورد تغییر مسیر را به مرورگر یا موتور های جستجو اعلام می کند:
- تغییر مسیر 301 دائمی – این کد نشان می دهد که تغییر مسیر دائمی است. به طور خاص، محتوای مورد نظر در URL اصلی قرار ندارد و برای همیشه به URL جدید منتقل شده است. این متداول ترین نوع تغییر مسیر بوده و برای سئو مهم است. زیرا امکان انتقال بهینه سازی های سئو از URL اصلی به URL جدید را می دهد.
- تغییر مسیر 302 (تغییر مسیر موقت) – این کد نشان می دهد که تغییر مسیر موقتی است. به عبارت دیگر، محتوا هنوز در URL اصلی وجود دارد، اما کاربران به طور موقت به صفحه دیگری منتقل می شوند. معمولا از این کد استفاده نخواهید کرد. این کد فقط برای مواردی مانند حالت تعمیر و نگهداری استفاده می شود. شما هرگز نباید از تغییر مسیر 302 برای اهداف سئو استفاده کنید.
- تغییر مسیر 303 (مشاهده سایر موارد) – این تغییر مسیر بسیار مشابه تغییر مسیر 302 است. تفاوت اصلی آن، این است که از ارسال بیش از یک بار اطلاعات کاربران (به عنوان مثال اطلاعات حساب بانکی) جلوگیری می کند. به صورت فنی اگر توضیح دهیم، درخواست مرورگر کاربر را از PUT متوقف کرده و درخواست های بعدی را به صورت GET استفاده می کند.
- تغییر مسیر 307 موقت – این تغییر مسیر هم مشابه 302 و 303 می باشد. تنها تفاوت در جزئیات فنی است. تغییر مسیر 307 از همان روش براب ارسال و دریافت اطلاعات استفاده می کند. در حالی که تغییر مسیر 303 از دو روش مختلف استفاده می کند.
- تغییرمسیر 308 (تغییر مسیر دائمی) – این تغییر مسیر هم همانند تغییر مسیر 301 است و به معنی منتقل شدن دائمی URL می باشد. تفاوت در جزئیات فنی بوده و تغییر مسیر 308 از POST استفاده می کند. در حالی که تغییر 301 می تواند از POST به GET تغییر کند.
به هنوان یک کاربر وردپرس، تقریبا همیشه از تغییر مسیر 301 برای هدایت دائمی مطالب استفاده خواهید کرد. در حالی که سایر انواع تغییر مسیر ها مناسب توسعه دهندگان بوده، اکثر کاربران وردپرس فقط به تغییر مسیر 301 نیاز دارند.
همچنین مجدد بگوییم برای اهداف سئو، تقریبا همیشه از تغییر مسیر 301 استفاده خواهد شد.
نحوه ایجاد تغییر مسیر URL در وردپرس با استفاده از .htaccess
اگر هاستینگ شما از وب سرور Apache استفاده می کند (کاری که اکثر هاستینگ های وردپرس انجام می دهند)، می توانید با ویرایش فایل htaccess سایت خود، تغییر مسیر را تنظیم کنید.
1. فایل htaccess سایت خود را پیدا کنید
برای دسترسی به فایل htaccess سایت خود، باید از طریق FTP یا cPanel File Manager به سرور سایت خود متصل شوید.
پس از انجام این کار، باید فایل htaccess را در ریشه هاست خود پیدا کنید، همان پوشه ای است که شامل پوشه های wp-admin و wp-content است.
برخی از افزونه های سئو وردپرس، ویرایشگر فایل htaccess را ارائه می دهند. به عنوان مثال، اگر از Yoast SEO استفاده می کنید، می توانید به تب سئو ابزار ها ← ویرایشگر فایل بروید تا فایل htaccess خود را ویرایش کنید.
2. از فایل htaccess خود پشتیبان تهیه کنید
تغییر مسیرها بسیار حساس هستند و ممکن است یک اشتباه کوچک منجر به غیرقابل دسترس بودن برخی یا تمام سایت شما شود. به همین دلیل، ضروری است که قبل از انجام هرگونه تغییری، از فایل htaccess موجود پشتیبان تهیه کنید. می توانید این کار را دانلود کردن این فایل در سیستم خود انجام دهید.
به این ترتیب، اگر مشکلی پیش آمد، تنها کاری که باید انجام دهید این است که نسخه پشتیبان خود را دوباره آپلود کنید و سایت شما فورا به حالت عادی برگردد.
3. تغییر مسیر خود را وارد کنید
پس از دانلود نسخه پشتیبان از فایل htaccess، آماده هستید که تغییر مسیر های خود را با استفاده از کد، اضافه کنید.
توجه داشته باشید URL فعلی که می خواهید تغییر مسیر داده شود، فقط بخش نامک و بدون دامنه را قرار دهید سپس روبری آن، لینک جدید را به صورت کامل وارد کنید.
Redirect 301 /old-post https://www.yoursite.com/new-post
نحوه تغییر مسیر URL با افزونه وردپرس
اگر نمی خواهید به صورت مستقیم فایل htaccess را ویرایش کنید، یک گزینه ساده تری هم وجود دارد. استفاده از افزونه تغییر مسیر در وردپرس. این افزونه ها به شما این امکان را می دهند تا تغییر مسیر های سایت خود را از پیشخوان وردپرس ایجاد و مدیریت کنید.
ما در اینجا از افزونه Redirection برای تغییر مسیر ها استفاده کرده ایم. پس از نصب و فعال سازی افزونه، می توانید به تنظیمات ← 301 Redirects رفته تا تغییر مسیر ها را تنظیم کنید.
در اینجا 3 قسمت برای پر کردن داریم:
- انتخاب نوع تغییر مسیر که به صورت پیش فرض روی 301 قرار دارد. می توانید از منو کشویی این کد را تغییر دهید.
- در قسمت Redirect From باید لینکی که می خواهید تغییر مسیر دهید را وارد کنید. برای مثال best-plugins-2020
- در قسمت Redirect To لینک جدید باید وارد شود. باری مثال best-plugins-2021
با کلیک بر روی دکمه Save تغییرات انجام خواهد شد.
شما می توانید این کار را برای تغییر مسیر دیگر URL ها تکرار کنید.
بهترین افزونه های تغییر مسیر وردپرس
Redirection
افزونه Redirection محبوب ترین افزونه تغییر مسیر وردپرس در WordPress.org است. افزونه ایی که در بیش از یک میلیون سایت فعال است.
این افزونه امکانات بیشتری نسبت به لیستی که در بالا ارائه کردیم دارد. برای مثال می توانید با استفاده از Regex تغییر مسیر های پیچیده تری را تنظیم کنید.
با این حال، اگر فقط می خواهید یک راه حل ساده برای تغییر مسیر چند URL داشته باشید، ممکن است برای نیازهای شما کمی زیاد باشد. به همین دلیل ما تصمیم گرفتیم که افزونه 301 Redirects را معرفی کنیم.
301 Redirects
افزونه 301 Redirects که در مرحله اول هم توضیح دادیم، گزینه بسیار ساده تری بوده و تنها برای ایجاد لینک های ساده قابل استفاده است.
Safe Redirect Manager
افزونه Safe Redirect Manager یکی دیگر از افزونه های محبوب تغییر مسیر در مخزن وردپرس می باشد.
می توانید از بین تغییر مسیر های مختلف یکی را انتخاب کنید. همچنین می توانید برای راه اندازی تغییر مسیر های پیشرفته، تغییر مسیر یکبار مصرف را تنظیم کرده و یا از wildcard یا Regex استفاده کنید.
نحوه تنظیم تغییر مسیرهای سطح سرور
علاوه بر تغییر مسیر های URL که تاکنون بر روی آنها متمرکز شده بودیم، ممکن است شرایطی داشته باشید که باید هدایت های سطح سرور را تنظیم کنید تا بر روی تمامی لینک های سایت شما تاثیر بگذارد.
سه تغییر مسیر رایج در اینجا عبارتند از:
- HTTP به HTTPS – شما می توانید تمام ترافیک سایت خود را را به نسخه HTTPS ارسال کنید.
- بدون www به www – می توانید تمام بازدیدها را به نسخه www یا غیر www ارسال کنید.
- تغییر نام دامنه – می توانید تمامی ترافیک دامنه قدیمی را به همان قسمت از دامنه جدید هدایت کنید.
نحوه تغییر مسیر از HTTP به HTTPS
برای هدایت کلیه ترافیک های HTTP به HTTPS، می توانید از htaccess یا افزونه اختصاصی استفاده کنید.
برای استفاده از روش htaccess باید کد زیر را قرار دهید:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
Header always set Content-Security-Policy "upgrade-insecure-requests;"
برای استفاده از افزونه هم می توانید از افزونه های زیر استفاده کنید:
نحوه تغییر مسیر از WWW به بدون WWW (با بالعکس)
برای تغییر مسیر در فایل htaccess باید از کد های زیر استفاده کنید:
www به بدون www:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.yoursite.com [NC]
RewriteRule ^(.*)$ https://yoursite.com/$1 [L,R=301]
بدون www به www:
RewriteEngine On
RewriteCond%{HTTP_HOST} ^yoursite.com [NC]
RewriteRule ^(.*)$ https://www.yoursite.com/$1 [L,R=301,NC]
نحوه تغییر مسیر کل سایت
برای هدایت دامنه قدیمی به دامنه جدید پس از تغییر دامنه، می توانید کد زیر را به فایل htaccess سایت قدیمی اضافه کنید (نیازی به افزودن هیچ قانونی در سایت جدید خود ندارید):
#Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) https://newsite.com/$1 [R=301,L
برای بهبود لینک های سایت خود از تغییر مسیر استفاده کنید
درک استفاده از تغییر مسیر ها برای ارائه تجربه بهتر بازدید کنندگان بسیار مهم است. همچنین این کار باعث بهبود در موتور های جستجو خواهد شد.
در بیشتر مواقع هنگام ایجاد وبلاگ، فقط باید از تغییر مسیر 301 استفاده کرد. انواع دیگر تغییر مسیر ها در موارد خاص استفاده می شوند. (البته فقط برای توسعه دهندگان)
برای تنظیم تغییر مسیر، می توانید با استفاده از فایل htaccess یا یکی از افزونه های تغییر مسیر در وردپرس استفاده کنید.
هنوز در مورد چگونگی تغییر مسیر ها در وردپرس سوالی دارید؟ از بخش نظرات با ما در میان بگذارید.
9 پاسخ
سلام
لطفا راهنمایی بفرمایید. من قبلا پلاگین ریدرکت نصب کردم و یک لینگ انتقال دادم. الان میخام دوباره همون لینکی که انتقال دادم به حالت اول خودش برگردونم. بنابراین در داخل لینک هدف همون لینک اصلی قرار دادم. اما اون صفحه برام باز نمیشه. علتش میشه بفرمایید جیه؟
ممنون
با عرض سلام و خسته نباشید
من توی لوکال هاست با افزونه contact form 7 یه فرم ساختم و میخوام اگه دکمه ارسال رو زدم، سایت به قالبی که من با html و css ساختم و اونجا به کاربر پیام میده، هدایت بشه.
لطفا راهنمایی بفرمایید. ممنون میشم
با سلام
می توانید با افزونه المنتور پرو و فرم داخلی این افزونه انجام بدید.
ممنون که اینقدر سریع پاسخ دادید
من میخواستم که دکمه ورود/ثبت نام مانند سایت شما درست کنم که بعد از ثبت نام یا ورود دیگه نمایش داده نشود و نام کاربر و منوی کاربر نمایش بدهد درست مثل سایت خودتان
همچنین بعد از کلیک روی خروج هم کاربر خارج بشود از سایت و به همون صفحه دوباره برگردد
چکار باید بکنم؟
افزونه های المنتور پرو و المنت پک و المنتور اکستراس رو هم از همین سایت گرفتم و نصب کردم
خیلی ممنون میشم جواب بدهید
با سلام
می توانید از آموزش زیر استفاده کنید:
آموزش طراحی منو کاربری در سربرگ با استفاده از المنتور
تمامی موارد مورد نیاز توضیح داده شده.
تشکر که باز هم پاسخ دادید
من اموزشی که گفتید رو دیدم و در طراحی اون مشکلی نیست
فقط اونجا که در اموزش گفته میشه برای لینک خروج ،لینک خروج مخصوص وردپرسمون رو قرار بدهیم تا عمل خروج انجام بشه
من در اینجا مشکل دارم نمیدونم چه لینکی بدهم تا از صفحه لاگ اوت بشود کاربر.
باز هم خیلی ممنون میشم جواب بدهید
با سلام
در پاسخ های قبلی هم نوشته شد: اینم لینک اموزش:
ترفند: ایجاد دکمه ورود و خروج با المنتور
سلام
ببخشید از تغیرمسیر یا ریدایرکت در المنت پرو برای لاگین و لاگ اوت میشه استفاده کرد؟
چجوری لینک خروج درست کنم که بعد از زدن دکمه خروج ریدایرکت بشه به همون صفحه اما لاگ اوت شده باشه؟
با سلام
می تونید عبارت خروج را در وبلاگ سرچ کنید و مقاله مربوط به ایجاد لینک خروج را مطالعه کنید.