نحوه رفع خطاهای پست سفارشی نوع 404 در وردپرس

با انتشار WordPress 3.0 امکان افزودن “انواع ارسال های سفارشی” به مضامین وردپرس شما فراهم شد که ابزاری بسیار با ارزش است و من در بسیاری از مضامین وردپرس من ایجاد کرده ام. در حال حاضر انواع سفارشی پست بسیار محبوب شده اند و تقریباً در هر موضوع وردپرس در آن جا استفاده می شوند. اما هرکسی که با انواع پست های سفارشی کار کرده است ، احتمالاً با آن روبرو شده است دreadful 404 خطایی یافت نشد هنگام تلاش برای دسترسی به پستی از نوع پست در یک نقطه یا نقطه دیگر. خوشبختانه تقریباً همیشه یک مشکل ساده برای رفع این خطاها وجود دارد.


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

1. تنظیمات پیوند همیشگی خود را بررسی کنید

این احتمالاً یکی از شایع ترین دلایلی است که افراد در انواع پست های سفارشی خود 404 خطا می کنند و من بارها با آنها برخورد کرده ام. من بسیاری از رفع مشکلات موجود در آنجا مانند شستشوی قوانین بازنویسی را مشاهده کرده ام (که توصیه نمی کنم) اما شخصاً بهترین راه حل را با موارد زیر داشتم:

راه حل:

  • ساختار پیوند شخصی دلخواه خود را تنظیم کنید (مانند٪ postname٪)
  • روی ذخیره کلیک کنید
  • ببینید آیا صفحات پست شخصی شما تنها 404 صفحه خطا را برمی گرداند یا خیر
  • در صورت انجام این کار ، به عقب برگردید و پیوند مجدد را به حالت پیش فرض تغییر دهید و ذخیره کنید
  • اکنون سعی کنید مجدداً لینک مستقیم را تنظیم کنید و ذخیره کنید

رفتن به جلو و عقب به طور معمول به رفع خطاهای من کمک کرده است و با این روش موفقیت بسیاری داشتم.

اکنون ، در صورتی که مجوزهای شما به درستی تنظیم نشده باشند ، در بعضی از سرورها ممکن است کار نکند و ممکن است شما مجبور شوید پرونده .htaccess خود را به صورت دستی به روز کنید. برای این کار باید از طریق FTP یا SFTP وارد مرورگر سایت خود شوید و در فهرست اصلی WordPress (همان محلی که پرونده wp-config.php و پوشه wp-content شما قرار دارد) وارد سایت خود شوید. در اینجا باید پرونده ای به نام .htaccess را پیدا کنید که می توانید آن را تغییر دهید (اگر آن را مشاهده نکردید اطمینان حاصل کنید که برنامه FTP شما امکان نمایش پرونده های مخفی را فعال کرده است و اگر به راحتی وجود ندارد یکی از آنها را ایجاد کنید). حالا مطمئن شوید که فایل حاوی کد اصلی وردپرس است همانطور که در آن ذکر شد اسناد وردپرس, که مانند این است:

# شروع وردپرس

بازنویسی Engine On
بازنویسی پایگاه /
rewriteRule ^ index \ .php $ - [L]
بازنویسی٪٪ {REQUEST_FILENAME! -f
بازنویسی٪٪ {REQUEST_FILENAME! -d
بازنویسی Rule. /index.php [L]

# پایان وردپرس

مهم: اگر در حال تغییر یک پرونده .htaccess موجود هستید ، ابتدا از نسخه رایانه در رایانه خود نسخه پشتیبان تهیه کنید ، ابتدا کافیست هر چیزی را به هم بزنید.

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

نکته دیگری که ممکن است باعث ایجاد خطای 404 شود این است که شما یک صفحه اصلی برای نمایش پست نوع پست خود دارید و دارای همان سیلیتی است که از نوع اصلی پست اصلی شما است. به عنوان مثال اگر شما یک نوع پست به نام “نمونه کارها” دارید و صفحه اصلی “Portfolio” را نیز با اسلای “portfolio” دارید (به عبارت دیگر برای دستیابی به یک پست نمونه کارها به سایت.com/portfolio/sample- مراجعه می کنید. post) این یک درگیری ایجاد می کند و باعث ایجاد خطای 404 در پست های پست نوشتاری منفرد می شود. به همین دلیل است که اغلب متوجه می شوید که نوع ارسال نمونه کارها از “پروژه های” مثل حلزون حرکت کردن یا “آیتم نمونه کارها” برای کلاهبرداری مفرد استفاده می کند.

راه حل:

  1. می توانید نام صفحه را تغییر دهید بنابراین متفاوت از نوع پست سفارشی است
  2. می توانید نوار زبانه ای نوع پست سفارشی خود را که با تغییر پارامتر بازنویسی انجام می شود ، تغییر دهید نوع پست سفارشی خود را ثبت کنید

3. قوانین بازنویسی خودکار Flush (برای توسعه دهندگان)

یکی دیگر از دلایل 404 خطا ، هر بار که نوع جدیدی از ارسال است ، باید قوانین بازنویسی خود را در وردپرس “گرگرفت” کنید. این کار را می توان با رفتن به تنظیمات> پیوندهای متداول و کلیک کردن روی دکمه ذخیره (در قسمت اول این پست ذکر شد).

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

// کد برای مضامین
add_action ('after_switch_theme'، 'flush_rewrite_rules')؛

// کد برای افزونه ها
Register_deactivation_hook (__FILE__ ، 'flush_rewrite_rules')؛
Register_activation_hook (__FILE__ ، 'myplugin_flush_rewrites')؛
عملکرد myplugin_flush_rewrites ()
// وظیفه ثبت CPT خود را از اینجا فراخوانی کنید (همچنین باید به "اولیه" وصل شود)
myplugin_custom_post_types_registration ()؛
flush_rewrite_rules ()؛
}

خطا یا راه حل دیگری داشته باشید?

اگر خطای دیگری دارید یا راه حل بهتری دارید ، لطفاً در زیر نظر دهید و به من اطلاع دهید. این امر نه تنها به من کمک می کند بلکه به دیگران کمک می کند که به دنبال رفع مشکل خود باشند. با تشکر!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map