آموزش های وردپرس

آموزش رفع خطای ۴۰۴ پس از تغییر پیوند یکتا در وردپرس

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

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

اگر با خطای 404 وردپرس هنگام تغییر پیوند یکتا مواجه شدید و از افزونه سئو وردپرس برای ریدایرکت به ساختار جدید استفاده نمی‌کنید ساختار پیوند یکتای خود را به حالت قبلی برگردانید و سپس به ترتیب مراحل ذکر شده در روش دوم این مقاله پیش برید تا ریدایرکت کاربران به ساختار جدید پیوند یکتا وردپرس را انجام دهید.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

برای اینکه بتونید تا مشکل خطای 404 بعد از تغییر پیوندهای یکتا در وردپرس را برطرف کنید دو راهکار پیش روی شما خواهد بود که عبارتند از:

  1. استفاده از افزونه سئو وردپرس و استفاده از قابلیت ریدایرکت به پیوند یکتای جدید
  2. تغییر در فایل htaccess. و ریدایرکت کاربران به ساختار پیوند یکتای جدید

استفاده از افزونه سئو وردپرس

اگر که از افزونه سئو وردپرس یا همون Yoast Seo استفاده می کنید کار برای شما آسان تر بوده و هیچ نیازی به اعمال تغییرات و انجام تنظیمات خاصی برای اینکه بتونید تا کاربران را به ساختار جدید از پیوند یکتا هدایت کنید نخواهید داشت. اگر از افزونه سئو وردپرس استفاده می‌کنید این افزونه قادر خواهد بود تا کاربرانی را که به پیوند یکتای قدیمی و یا همون لینک قدیمی مطالب سایت هدایت شده‌اند را به صورت ریدایرکت 301 به پیوند یکتای جدیدی که در وردپرس ساخته‌اید هدایت کند.

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

استفاده از ریدایرکت 301 با فایل htaccess.

اما راهکار دوم برای رفع خطای 404 پس از تغییر پیوند یکتا وردپرس کمی پیچیده است و پیشنهاد می‌کنم تا جایی که میتونید از همون روش اول که افزونه سئو وردپرس در اختیارتون قرار میده استفاده کنید، چرا که این افزونه تقریبا مورد استفاده همه قرار میگیره و اگر شما ازش استفاده نمیکنید حتما نسبت به نصب و فعال سازی اون اقدام کنید. اما اگر که به هر دلیلی تمایلی به استفاده از افزونه ندارید میتونید با استفاده از فایل htaccess. که در هاست شما قرار داره این مشکل را در 5 مرحله رفع کنید که در ادامه  به توضیح مراحل این کار می پردازم.

مرحله اول: تنظیم ساختار پیوند یکتا و URL های سایت

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

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

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

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

مرحله دوم: ساخت کدهای تغییر مسیر کاربران

برای این منظور میتونید از ابزاری که وبسایت رسمی افزونه سئو وردپرس برای ما قرار داده استفاده کنید. پس به آدرس https://yoast.com/research/permalink-helper.php مراجعه کرده و سپس فرمی که در این سایت مشابه تصویر زیر به شما نشون داده میشه را بر اساس اطلاعات سایت خودتون وارد کنید.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

همونطور که در تصویر مشاهده می‌کنید اطلاعات فرم را به ترتیب زیر پر کنید:

  • در فیلد اول آدرس سایت خود را به صورت کامل وارد کنید، اگر از https:// یا http:// و www هم استفاده می‌کنید وضعیت اون را مشخص کنید.
  • در فیلد دوم در صورتی که وردپرس شما بر روی یک پوشه نصب شده و به عبارتی همون حالت وبلاگ را داره آدرس اونو وارد کنید. در اینجا چون وردپرس ما بر روی مسیر https://mizbanfa.net/blog نصب شده پس باید آدرس پوشه /blog/ را در این فیلد وارد کنیم. اما اگر وردپرس شما بر روی دامنه اصلی و یا ساب دامنه نصب شده نیازی نیست تا در این فیلد چیزی قرار بدین.
  • در قسمت سوم هم ساختار قبلی پیوند یکتا خودتون را مشخص کنید. در اینجا پیوند یکتای من روی ماه و نام نوشته قرار داره که اونو انتخاب کردم. اگر از هر نوع پیوند یکتا استفاده می‌کنید کافیه تا اونو مشخص کنید. با استفاده از گزینه Custom هم میتونید تا پیوند یکتای سفارشی که استفاده کردید را وارد کنید.

حالا روی دکمه نارنجی رنگ Create Redirect کلیک کنید تا به صفحه بعد هدایت شده و کدی مشابه تصویر زیر به شما ارائه شود.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

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

مرحله سوم: تغییر پیوند یکتای وردپرس

حالا وارد پیشخوان وردپرس شده و مجددا به مسیر تنظیمات> پیوندهای یکتا مراجعه کرده و نوع ساختار پیوند یکتای سایت خودتون را روی نام نوشته تعیین کرده و روی دکمه ذخیره تغییرات که در انتهای صفحه قرار داره کلیک کنید.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

بعد از تغییر این مرحله همچنان پیوندهای یکتا شما با خطا مواجه خواهند شد و باید مرحله‌ی نهایی برای ریدایرکت کاربران را قراهم کنید.

مرحله چهارم: افزودن کد به فایل htaccess. و اجرای آن

به هاست خود مراجعه کنید و سپس برای ویرایش فایل htaccess. به قسمت File Manager هاست مراجعه کنید. بنابراین بعد از ورود به هاست روی گزینه File Manager که در بخش Files قرار داره کلیک کنید.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

بعد از اینکه وارد فایل منیجر هاست شدید به مسیر public_html مراجعه کرده و سپس به مسیری که وردپرس در اونجا نصب شده مراجعه کرده و به دنبال فایل htaccess. مراجعه کنید. اگر این فایل را در هاست مشاهده نمی‌کنید روی دکمه Settings که در بالا سمت راست مشاهده می‌کنید کلیک کرده و گزینه Show Hidden Files را برای نمایش فایل‌های مخفی فعال کرده و در نهایت روی دکمه Save کلیک کنید تا فایل htaccess. به شما نمایش داده شود.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

حالا روی فایل htaccess. راست کلیک کرده و گزینه Edit را انتخاب کنید تا به صفحه ویرایش این فایل هدایت شوید. حالا کدی که در مرحله دوم با استفاده از ابزاری که در سایت Yoast قرار داره دریافت کردید را درست بعد از عبارت END WordPress# قرار داده و فایل htaccess. را ذخیره کنید.

رفع خطای 404 پس از تغییر پیوند یکتا وردپرس

مرحله پنجم: تست و نتیجه نهایی

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

امیدوارم که این آموزش هم مورد توجه شما قرار گرفته باشه و با استفاده از اون تونسته باشید تا خطای 404 در وردپرس را برطرف کنید. در صورتی که در رابطه با این آموزش سوالی برای شما پیش اومده و یا مشکلی در روند انجام مراحل داشتید از بخش دیدگاه‌ها اعلام کنید تا در کوتاه‌ترین زمان ممکن پاسخگوی شما باشم.
3.6/5 - (16 امتیاز)

علی یزدان پرست

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

‫۲۶ دیدگاه ها

  1. سلام من ساختار دلخواهمو میزارم روی حالت /%post_id%/%postname%/ اما با آموزش فوق هم نشد درست بشه

    1. سلام، فایل htaccess هاست خودتون را تغییر نام بدین و مجددا این کار را انجام بدین ببینید باز هم با این مشکل مواجه میشید یا خیر!

      1. سلام بنده خیلی وضعیتم هاده لطفا جواب بدید بنده یوآست سئو هم نصب دارم روی سایت ولی وقتی یکتا رو روی حالت نام یا هر حالتی غیر ساده میزارم بازم خطا میده مراحل بالارو انجام دادم بازم نشد شما چه پیشنهادی دارید؟؟منظور از تغییر نام htaccess چیه؟ مگه میشه این کارو کرد ؟؟ سایت به مشکل نمیخوره؟؟

  2. با سلام و وقت بخیر ممنون از سایت خوب و مطالب بسیار مفید شما ، باتوجه به اینکه من یک مبتدی هستم مشکلی برای سایتم پیش اومده اگر امکانش هست کمکم کنید، سایت من هر روز داره به خطاهای ۴۰۴ ش اضافه میشه و خطاها به این صورت هست که اگر تاریخ ابتدای لینک رو تغییر بدم اون صفحه بالا میاد( البته تنظیمات پیوند یکتا بر روی روز و نام قرار داره) به نظر شما باید چیکار کنم؟ اصلا دلیل این خطاها چی هست؟ آیا باید تنظیمات پیوند یکتا رو تغییر بدم؟

    1. سلام روزبخیر؛
      آیا سایتتون در حالت ایندکس قرار داره ؟ چون اگر لینکی ایندکس شده باشه و ادرسش رو تغییر بدید برای کاربرانی که از موتورهای جستجو وارد سایتتون مین خطای 404 نمایش داده میشه همچنین باید ادرس ها رو در سایتتون هم اصلاح کنید…
      توصیه میکنم اول ساختار پیوندهای یکتا رو اصلاح کنید بعد هر آدرسی رو که تغییر میدید به ادرس جدید ریدایرکت کنید.

  3. سلام من یه یک وبسایت دارم که قبلا سئوی خوبی داشت اما ظاهرش قدیمی بود… اومدم با یه قالب جدید ساختمش که دوباره قشنگ تر بشه محیطش..دادمش بالا تو سرچ گوگل اون لینک های قدیمی رتبه هاش خیلی خوب شده ولی خب وقتی میری داخلش خطای 404 میده. میخوام ریدیرکت بشه ولی خب چون اصلا دیگه اونطور صفحه ای وجود نداره نمدونم از کجا ویرایش برگرو بزنم.

    1. سلام پارسا عزیز؛
      میتونید ادرس های قدیمی رو به آدرس جدید و مد نظرتون ریدایرکت کنید. میتونید از آموزش ویدیویی و تصویری زیر برای انجام ریدایرکت صفحات سایتتون کمک بگیرید. 🙂
      نحوه ریدایرکت آدرس های سایت در هاست سی پنل
      آموزش نحوه ریدایرکت لینک ها به یک دیگر در وردپرس

  4. سلام بنده خیلی وضعیتم هاده لطفا جواب بدید بنده یوآست سئو هم نصب دارم روی سایت ولی وقتی یکتا رو روی حالت نام یا هر حالتی غیر ساده میزارم بازم خطا میده مراحل بالارو انجام دادم بازم نشد شما چه پیشنهادی دارید؟؟منظور از تغییر نام htaccess چیه؟ مگه میشه این کارو کرد ؟؟ سایت به مشکل نمیخوره؟؟

  5. سلام . من توی یه پوشه قالبمو نصب کردم. بعد پیوند یکتامو تغییر دادم . بعد از اون دیگه وارد پیشخوان ورد پرس نشد. و ارور ۴۰۴ داد و نمای سایتم بهم ریخت.رفتم فایل .htaccessرو هم تغییر دادم اما درست نشد . اگه مییشه لطفا راهنماییم کنین

    1. سلام روزبخیر؛
      آیا نسخه بکاپی قبل از تغییرات تهیه کرده بودید که قادر به ریستور باشید؟

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

    The requested URL was not found on this server.
    تو هیچ سایتی در مورد این مشکل مطلبی پیدا نکردم اگه راهنماییم کنید خیلی ممنون میشم

    1. سلام روزبخیر؛
      آدرس اون صفحه رو بررسی کنید که ایجاد شده باشه… آدرس صحیح باشه. نامک اون صفحه با پیجی که باز میکنید یکسان باشه. در واقع این ارور به شما میگه ادرسی که در مرورگر وارد میکنید وجود نداره.

  7. سلام
    من فروشگاه سایتم را به ساب فولدر u-pvcplus.com/shop بردم و ادرس محصولات را به u-pvcplus.com/shop/p تغییردادم و در آخر نیز همه محصولات را دستی و دونه دونه به ادرس جدید ریداریکت کردم ،درآخر مشکلی وجود نداشت .
    اما جدیدا بانتقال هاستی که از میهن وب هاست به میزبان فا داشتم،صفحه u-pvcplus.com/shop باز میشه اما رو محصولات که میزنم خطای 404 می دهد.
    پیوند های یکتارو روی حالت ساده میزارم درست میه اما من اینو نمیخام (ادرس ها عوض میشه)

    ممنون میشم راهنمایی بفرمایید

  8. سلام
    من سایتم رو از یه هاست به هاست دیگه انتقال دادم الان هیچ جاش مشکل نداره فقط موقعی که توی قالب تغییرات ایجاد میکنم میره صفحه 404
    فقط برای تغییرات قالب از داشبورد خود قالب اینجوریه. قالب هم وودمارته

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

  9. سلام. خوشبختانه درست شد. مشکل از mod security سی پنل بود که باید خاموش میشد.

  10. سلام و روز بخیر
    سایت من در هنگام بارگزاری و همه چی درسته فقط موقعی که با جی تی متریکس صفحه اصلی را چک میکنم خطای 404 میده و تو گوگل هم صفحه دیگه ای به جای صفحه اصلی ایندکس شده و نمایش داده میشد میشه لطفا راهنمایی کنید تشکر.

  11. سلام وقت بخیر
    سایت مشکلی نداره ولی وقتی می خوام وارد پیشخوان بشم ارور 404 میده علت چی هست؟

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

  12. با سلام و خسته نباشید
    برای سایت من یک برگه ای در گوگل نمایش داده می شود که url بالای صفحه اصلا شبیه برگه من نیست اما اطلاعات اون صفحه که به طور خلاصه زیر لینک در گوگل نمایش داده میشود محتوای همون برگه است و بعد اینکه این صفحه رو باز میکنم خطای The link you followed may be broken, or the page may have been removed. نمایش داده میشود برای رفع این مشکل باید چکاری انجام بدهم؟

    1. سام روزبخیر؛
      در افزونه تنها تعیین می کنید که چه ادرسی به صفحه مقصد ریدایرکت شود و نیاز به اقدام خاص دیگری نیست.

  13. سلام وقت بخیر
    1-یک صفحه به اشتباه در وبسایتم انتشار داده شد. من اون صفحه رو پاک کردم. از trash هم پاک کردم. ولی در گوگل این صفحه میاد و وقتی روی اون کلیک میشه خطای 404 میده. چه کار باید کرد؟
    2- یک صفحه دیگه هم هست که خطای 404 میده. تو این صفحه یک لینکی داره که ابتدا ادرسش درست نبود ولی ادرسش درست شد. ولی حالا می بینم که ت. گوگل میا این صفحه با خطای 404.
    ممنون میشوم راهنمایی بفرمایید

  14. سلام وقتتون بخیر
    من یک فایل php در cpanel آپلود کردم حالا اجرا میکنم خطای404 میده ؟
    درصورتیکه یک فایل کنارش دارم اجرا میکنم درسته ؟
    و اینکه فایل من میخواد تاریخ میلادی رو به شمسی تبدیل کنه و
    در اون فایل ,فایل jdf رو هم آپلود کردم و کنارش قراردادم
    اینم کداش

    include_once(‘jdf.php’);
    $current_gdate = date(‘Y/m/d’);

    $arr_parts = explode(‘/’, $current_gdate);

    $gYear = $arr_parts[0];
    $gMonth = $arr_parts[1];
    $gDay = $arr_parts[2];

    $current_jdate = gregorian_to_jalali($gYear, $gMonth, $gDay, ‘/’);

    echo $current_gdate . ‘ – ‘ . $current_jdate;

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *