روشهای رفع مشکل صفحه سفید در وردپرس

مقدمه
اگر مدتی با وردپرس کار کرده باشید، احتمال زیادی وجود دارد که با صفحه سفید مرگ (White Screen of Death یا WSoD) روبرو شده باشید. این مشکل یکی از ترسناکترین و در عین حال رایجترین خطاهای وردپرسی است. در چنین وضعیتی، سایت شما ناگهان ناپدید میشود و تنها چیزی که کاربر مشاهده میکند، یک صفحه سفید کاملاً خالی است — بدون پیام خطا، بدون هشدار، فقط سکوت!
چنین مشکلی میتواند بهسرعت اعتماد بازدیدکنندگان را از بین ببرد و حتی باعث افت شدید سئو و کاهش ترافیک سایت شود. اما جای نگرانی نیست! در این مقاله جامع، به بررسی دلایل اصلی بروز WSoD میپردازیم و گامبهگام روشهایی کاربردی برای رفع آن را آموزش میدهیم. چه مبتدی باشید و چه توسعهدهنده حرفهای، این راهنما برای شما مفید خواهد بود.
دلایل رایج بروز صفحه سفید مرگ
پیش از آنکه به راهکارها بپردازیم، ابتدا باید بدانیم چرا این مشکل اتفاق میافتد. در ادامه با رایجترین دلایل WSoD آشنا میشویم:
1. خطاهای PHP یا کد معیوب
وردپرس بر پایه PHP ساخته شده است؛ بنابراین هرگونه خطای نحوی یا منطقی در فایلهایی مانند functions.php
، فایلهای قالب یا افزونهها میتواند باعث توقف کامل سایت شود.
مثال رایج: فراموش کردن یک ;
یا استفاده اشتباه از یک تابع.
2. افزونههای ناسازگار یا معیوب
گاهی یک افزونه (Plugin) با نسخه وردپرس یا سایر افزونهها ناسازگار است و باعث اختلال کلی در عملکرد سایت میشود. این اتفاق معمولاً بعد از بهروزرسانی رخ میدهد.
3. مشکلات قالب (Theme)
قالبهایی که بهدرستی کدنویسی نشدهاند یا با هسته وردپرس ناسازگار هستند، ممکن است WSoD را ایجاد کنند — بهخصوص اگر بهتازگی قالب را تغییر دادهاید.
4. محدودیت حافظه PHP (Memory Limit)
اگر سایت شما سنگین باشد (مانند فروشگاههای ووکامرسی) و سرور فضای کافی اختصاص نداده باشد، با کمبود حافظه مواجه خواهید شد و در نتیجه WSoD ظاهر میشود.
5. خراب شدن فایل .htaccess
فایل .htaccess
تنظیمات مهمی در سطح سرور انجام میدهد. تغییر یا خطای کوچک در این فایل میتواند سایت را از دسترس خارج کند.
6. مشکلات هاستینگ یا سرور
آپدیت سرور، حملات DDoS، محدودیت منابع یا استفاده از نسخههای قدیمی PHP میتوانند باعث بروز WSoD شوند.
7. سایر عوامل فنی
-
آسیب به فایلهای هسته وردپرس (core files)
-
کش و CDNها مانند Cloudflare
-
خطا در بارگذاری فایلها هنگام انتقال سایت یا نصب
علائم و روشهای تشخیص اولیه
اگرچه در بیشتر موارد تنها با یک صفحه سفید مواجه هستیم، گاهی علائم دیگری نیز دیده میشود:
-
نمایش ارورهایی مانند:
Error establishing a database connection
-
عدم نمایش محتوا در بخش خاصی از سایت (مثلاً فقط صفحه مدیریت)
-
مشاهده ارور در کنسول مرورگر (F12 > Console)
برای تشخیص بهتر میتوانید:
-
سایت را در مرورگرهای مختلف یا دستگاههای دیگر تست کنید.
-
از ابزارهایی مانند GTmetrix یا Pingdom استفاده کنید تا خطاها را بیابید.
-
لاگهای خطا را در هاست یا cPanel بررسی کنید.
مراحل گامبهگام برای رفع صفحه سفید مرگ
در ادامه، روشهای کاربردی برای حل این مشکل را با ترتیب منطقی بررسی میکنیم:
گام اول: فعالسازی حالت دیباگ در وردپرس
فعال کردن دیباگ کمک میکند تا خطاها را ببینید و علت دقیق WSoD را متوجه شوید.
مراحل:
-
از طریق FTP یا File Manager وارد مسیر اصلی وردپرس شوید.
-
فایل
wp-config.php
را ویرایش کنید و کدهای زیر را در انتهای آن قرار دهید:define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);
-
سایت را رفرش کرده و فایل
wp-content/debug.log
را بررسی کنید.
گام دوم: افزایش حافظه PHP
اگر در فایل لاگ اروری مانند Allowed memory size exhausted
مشاهده کردید:
-
در
wp-config.php
اضافه کنید:define('WP_MEMORY_LIMIT', '256M');
-
یا در
.htaccess
:php_value memory_limit 256M
اگر بینتیجه بود، از پشتیبانی هاستینگ درخواست افزایش حافظه را داشته باشید.
گام سوم: غیرفعالسازی افزونهها
-
وارد مسیر
wp-content
شوید. -
پوشه
plugins
را به عنوان مثال بهplugins_backup
تغییر نام دهید. -
سایت را بررسی کنید. اگر درست شد، یکییکی افزونهها را فعال کنید تا افزونه مشکلدار را پیدا کنید.
گام چهارم: تغییر قالب به قالب پیشفرض
-
وارد پوشه
wp-content/themes
شوید. -
قالب فعلی را به نام دیگری تغییر دهید (مثلاً
old_theme
). -
وردپرس به قالب پیشفرض مانند Twenty Twenty-Four بازمیگردد.
-
اگر سایت بالا آمد، مشکل از قالب بوده است.
گام پنجم: بررسی و بازسازی فایل .htaccess
-
فایل
.htaccess
را به.htaccess_backup
تغییر دهید. -
یک فایل جدید بسازید و کد زیر را قرار دهید:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
گام ششم: جایگزینی فایلهای هسته وردپرس
-
آخرین نسخه وردپرس را از wordpress.org دانلود کنید.
-
از طریق FTP، تمام فایلها به جز پوشه
wp-content
و فایلwp-config.php
را جایگزین کنید.
گام هفتم: بررسی لاگهای خطا در هاست
در cPanel بخش Errors یا Error Logs را بررسی کنید. اگر هاست شما اطلاعات بیشتری نمیدهد، با پشتیبانی تماس بگیرید.
گام هشتم: پاکسازی کش و بروزرسانی
-
حافظه کش را پاک کنید (پلاگینهایی مانند WP Super Cache یا W3 Total Cache).
-
حالت ناشناس (Incognito) مرورگر را امتحان کنید.
-
نسخه PHP را به 8.1 یا بالاتر ارتقاء دهید.
راهکار نهایی: بررسی دیتابیس
اگر هنوز سایت بالا نیامده:
-
وارد phpMyAdmin شوید.
-
دیتابیس وردپرس را انتخاب و همه جدولها را انتخاب کنید.
-
از منوی پایین گزینه Repair Table را اجرا کنید.
چگونه از بروز مجدد صفحه سفید وردپرس جلوگیری کنیم؟
پیشگیری همیشه بهتر از درمان است:
-
✅ بکآپ منظم بگیرید – از افزونههایی مانند UpdraftPlus استفاده کنید.
-
✅ افزونهها و قالبها را بهصورت مرحلهای بهروزرسانی کنید.
-
✅ از سایت تستی (Staging Site) برای آزمایش تغییرات استفاده کنید.
-
✅ پلاگینهای نظارتی مانند Query Monitor یا WP Debugging نصب کنید.
-
✅ هاست مناسب انتخاب کنید – هاستهایی با منابع کافی و پشتیبانی قوی مانند هاست وردپرس اردرهاست و هاست ووکامرس اردرهاست انتخابهای مناسبی هستند.
جمعبندی
هرچند صفحه سفید وردپرس ترسناک و ناامیدکننده به نظر میرسد، اما اغلب با چند مرحله ساده قابل حل است. در بیشتر مواقع، خطا در کد یا کمبود حافظه دلیل اصلی است. اگر طبق مراحل بالا پیش بروید، احتمالاً ظرف چند دقیقه سایت شما به حالت عادی برمیگردد.
اگر تازهکار هستید یا سایت شما اهمیت بالایی دارد، توصیه میشود با یک متخصص وردپرس مشورت کنید تا از آسیب بیشتر جلوگیری شود.
شما چه تجربهای دارید؟ آن را در بخش نظرات با ما به اشتراک بگذارید.
این مقاله بر پایه تجربیات عملی و مستندات رسمی وردپرس تهیه شده است. برای موارد خاص، حتماً به انجمن پشتیبانی وردپرس مراجعه کنید.