چرا وردپرس ۵.۵ باعث خرابی سایتها شده است؟
در این مقاله میخوانید
هزاران سایت وردپرسی پس از بروزرسانی وردپرس خود به نسخهی WordPress 5.5 با مشکل مواجه شدند. یکی از علتهای بروز مشکل در وردپرس ۵.۵، عدم پشتیبانی این نسخه از jQuery Migrate است که باعث اختلال دربیش از دههزار وبسایت شده است.
همچنین، عدم سازگاری این نسخهی وردپرس با شیوهی تنظیم صفحهبندی برخی از پوستههای وردپرسی، موجب شده تا سایتها عملکرد مناسبی همچون گذشته نداشته باشند.
در این مقاله سعی داریم به بررسی این دو مشکل در WP 5.5 بپردازیم. سپس، راهکار رفع مشکلات وردپرس ۵.۵ را به شما معرفی خواهیم کرد.
jQuery Migrate Bug و وردپرس ۵.۵
در وردپرس ۵.۵ از کتابخانهی جاوا اسکریپت jQuery Migrate استفاده نشده است. jQuery Migrate کتابخانهای است که مانند یک پل باعث اجرا شدن کدهای قدیمی بر روی وردپرس میشود. اگر شما از افزونهها و پوستههای قدیمی(مخصوصا آنهایی که دیگر بروزرسانی نمیشوند)، در سایت خود استفاده میکنید؛ احتمالا در وردپرس ۵.۵ با مشکل مواجه میشوید. البته در نظر داشته باشید، این مشکل درحقیقت تقصیر نسخهی جدید وردپرس نیست و استفاده از پلاگین و پوستههای قدیمی است که باعث بروز اختلال در سایتها میشود.
چگونه خطای jQuery Migrate را حل کنیم؟
تاریخ آخرین آپدیت افزونههای وردپرس خود را بررسی کنید. اگر زمان آخرین بروزرسانی بیش از یکسال بوده شاید بهتر باشد به دنبال یک افزونهی جایگزین باشید.
فراموش نکنید استفاده از افزونههای قدیمی ریسک امنیتی را افزایش میدهد پس بهتر است حتی در صورتی که با وردپرس ۵.۵ مشکلی ندارید، به فکر استفاده از افزونههای جدید باشید.
اگر به هردلیلی نمیتوانید از theme و پلاگینهای جدید استفاده کنید و یا از طرفی در کنسول کروم با خطاهای جاوا اسکریپت روبهرو هستید؛ پلاگین “Enable jQuery Migrate Helper” میتواند به شما در حل این مشکل کمک کند. تعداد نصبهای فعال این پلاگین بیش از دههزار مورد است که نشاندهندهی شایع بودن این مشکل در میان ناشران است. شما میتوانید این افزونه به کمک لینک زیر دانلود کنید:
Pagination Bug و وردپرس ۵.۵
صفحهبندی وردپرس یا Pagination، بخشی از ساختار پیمایش یک وبسایت است. آپدیت وردپرس به نسخهی ۵.۵ باعث عملکرد نامناسب صفحهبندی برخی سایتها شده است. به گزارش برخی از ناشران وبسایت، پس از بروزرسانی وردپرس پارامتر page از نشانی(URL) سایت پاک شده و لینک ریدایرکت ۳۰۱ میشود.
علت بروز این مشکل این است که وردپرس از متغیر “page” در صفحهبندی خود استفاده میکند اما اکثر تمهای وردپرسی از متغیر “page” برای کاربردهای دیگری استفاده میکنند. در وردپرس ۵.۵ متغیر page تنها میتواند مقادیر عددی دریافت کند درحالیکه در کوئریها و کدهای پوسته این متغیر میتواند رشتهها و کاراکترهای غیر عددی نیز دریافت کند.
چگونه خطای صفحهبندی را رفع کنیم؟
در وردپرس متغیر “page” تنها برای دریافت مقادیر عددی تعریف شده است. برای مثال استفاده از این کلمه دریک کوئری به شکل “page=offers&id=xxx?” با خطا مواجه میشود. برای رفع این مشکل میتوانید به جای استفاده از کلمهی “page” از کلمهی دیگری مانند “mypage” در کوئریهای خود استفاده کنید.
راه دیگر برای برطرف کردن این مشکل، غیرفعال کردن تابع “()redirect_canonical” برای این سبک درخواستها میباشد.
توجه: پیش از انجام این کار حتما با متخصص سئوی سایت خود مشورت کنید و پیامدهای انجام این کار بر سئوی سایت خود را در نظر بگیرید.
جمعبندی
به طور کلی در این مقاله از آموزش وردپرس بررسی کردیم، wordpress ۵.۵ مزایای خوبی دارد و یک آپدیت موفق تلقی میشود. در این میان اما مواردی هم وجود دارد باعث ایجاد مشکل برای بسیاری از ناشران وبسایت شده است. مشکلاتی مانند اختلال در صفحهبندی یا اجرا نشدن بخش زیادی از کد های جاوا اسکریپت، عملکرد بسیاری از سایتهای وردپرسی را تحت تاثیر قرار دادند. شاید این مشکلات به نظر پیچیده باشند اما پس از اینکه ریشهی هر مشکل را بیابید به راحتی میتوانید آن را حل کنید.