وردپرس

چرا بعد از آپدیت افزونه‌ها، نمای سایت بهم می‌ریزد؟

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

این صحنه‌ای است که تقریبا هر مدیر سایت وردپرسی، دست‌کم یک بار در زندگی حرفه‌ای‌اش تجربه کرده است. اما سؤال این است: چرا این اتفاق می‌افتد؟ و مهم‌تر از آن، چطور می‌توانیم از آن جلوگیری کنیم؟

چرا بعد از آپدیت افزونه‌ها، نمای سایت بهم می‌ریزد؟
چرا بعد از آپدیت افزونه‌ها، نمای سایت بهم می‌ریزد؟

هفت دلیلی که نمای سایت وردپرس بعد از آپدیت بهم ریخته می‌شود

۱. تداخل افزونه‌ها و قالب‌ها با نسخه‌ی جدید

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

به‌یاد داشته باشید که وردپرس، یک اکوسیستم بزرگ با بیش از ۶۰ هزار افزونه و هزاران قالب است. هماهنگ کردن همه‌ی این قطعات با یکدیگر، کار هر توسعه‌دهنده‌ای نیست.

۲. مشکلات PHP

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

اگر هاست شما هنوز از PHP ۷.۲ یا قدیمی‌تر استفاده می‌کند و شما وردپرس را به نسخه‌ی جدیدی آپدیت می‌کنید که به PHP ۸.۱ یا بالاتر نیاز دارد، سایت شما به‌سادگی از کار می‌افتد. در واقع، این وردپرس نیست که خراب شده؛ مشکل این این است که سرور شما نمی‌تواند کدهای جدید را اجرا کند. در چنین مواردی، ممکن است با صفحه‌ی خطای There has been a critical error on this website مواجه شوید.

۳. حافظه‌ی سرور تمام شده است

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

۴. کش قدیمی

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

۵. فایل‌های اصلی وردپرس خراب شده‌اند

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

۶. خطای پایگاه‌داده 

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

۷. خطای آپدیت خودکار

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


با این روش ها علت بهم ریختگی سایت خود را پیدا کنید

چطور بفهمیم که مشکل از آپدیت است و نه چیز دیگری؟

چند نشانه‌ی کلیدی وجود دارد:

صفحه‌ی سفید مرگ (WSOD) : سایت شما کاملا سفید است و هیچ محتوایی نمایش داده نمی‌شود.

خطای بحرانی: پیام There has been a critical error on this website را می‌بینید.

به‌هم‌ریختگی ظاهری: قالب سایت بدون استایل (CSS) نمایش داده می‌شود، منوها از جای خود درآمده‌اند، یا المان‌های گرافیکی به‌درستی بارگذاری نمی‌شوند.

خطای ۴۰۳ یا ۵۰۰: با خطای سرور مواجه می‌شوید.

پیام حالت تعمیر و نگهداری: صفحه می‌گوید Briefly unavailable for scheduled maintenance و برای مدت طولانی در همین حالت می‌ماند.


پیشگیری از بهم ریختگی وردپرس

حالا که می‌دانیم چرا این اتفاق می‌افتد، بیایید ببینیم چطور می‌توانیم از وقوع آن جلوگیری کنیم.

۱. همیشه پشتیبان گیری کنید

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

۲. در محیط تست Staging آپدیت کنید

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

۳. در ابتدای کار افزونه‌ها و قالب را به‌روز کنید

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

۴. سازگاری افزونه‌ها را بررسی کنید

قبل از آپدیت، به صفحه‌ی افزونه‌های خود بروید و ببینید آیا افزونه‌ای دارید که مدت زیادی است به‌روز نشده است. افزونه‌های قدیمی و رها شده، بزرگ‌ترین خطر برای آپدیت هستند. همچنین می‌توانید از افزونه‌های بررسی‌کننده‌ی سازگاری PHP Compatibility Checker استفاده کنید تا مطمئن شوید افزونه‌های شما با نسخه‌ی جدید PHP و وردپرس سازگار هستند.

۵. آپدیت‌های امنیتی 

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

۶. آپدیت خودکار را مدیریت کنید

اگر آپدیت خودکار را فعال کرده‌اید، حداقل آپدیت خودکار افزونه‌های حیاتی را غیرفعال کنید تا کنترل بیشتری روی فرایند داشته باشید.


اگر سایت از قبل به‌هم ریخته است، چکار کنیم؟

قدم اول: نترسید و خونسرد باشید. بسیاری از مشکلات آپدیت با چند قدم ساده حل می‌شوند.

قدم دوم: ایمیل حالت بازیابی (Recovery Mode) را چک کنید. وردپرس معمولا وقتی خطای بحرانی رخ می‌دهد، یک ایمیل با لینک حالت بازیابی برای شما می‌فرستد. با کلیک روی آن لینک، می‌توانید وارد پیشخوان شوید و افزونه‌ی مشکل‌دار را غیرفعال کنید.

قدم سوم: کش را پاک کنید. گاهی مشکل فقط یک کش قدیمی است. کش مرورگر، کش افزونه‌ی سایت، و کش سمت سرور را پاک کنید.

قدم چهارم: همه‌ی افزونه‌ها را غیرفعال کنید. اگر به پیشخوان دسترسی دارید، همه‌ی افزونه‌ها را غیرفعال کنید. اگر دسترسی ندارید، از طریق FTP یا مدیر فایل هاست، نام پوشه‌ی wp-content/plugins را به wp-content/plugins_old تغییر دهید. اگر سایت درست شد، یعنی یکی از افزونه‌ها مشکل دارد. حالا افزونه‌ها را یکی‌یکی فعال کنید تا مقصر را پیدا کنید.

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

قدم ششم: فایل‌های اصلی وردپرس را دوباره نصب کنید. اگر هیچ‌کدام از موارد بالا کار نکرد، ممکن است فایل‌های اصلی وردپرس خراب شده باشند. از طریق FTP، پوشه‌های wp-admin و wp-includes را با نسخه‌ی جدید جایگزین کنید.

قدم هفتم: نسخه‌ی PHP را چک کنید. مطمئن شوید هاست شما از نسخه‌ی PHP موردنیاز وردپرس جدید پشتیبانی می‌کند. اگر نه، از پشتیبانی هاست بخواهید نسخه را ارتقا دهد.


جمع‌بندی:

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

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

دکمه بازگشت به بالا