حل مشکل سفید شدن صفحه وردپرس (صفحه مرگ وردپرس)
یکی از خطاهایی که در سایت وردپرسی خود ممکن است با آن مواجه شوید، سفید شدن صفحه وردپرس است. این خطا میتواند در ادمین وردپرس(wp admin) رخ داده و صرفا دسترسی به پیشخوان وردپرس نداشته باشید یا اینکه میتوانید در بخش کاربری سایت رخ داده باشد که کاربران قادر به مشاهده محتوای صفحات نخواهند بود.
البته حالتی هم وجود دارد که هر دو نوع صفحات به رنگ سفید نمایش داده شده و هیچ دسترسی از طریق مدیریت وردپرس برای رفع خطا ندارید. اینجاست که باید از هاست خود کمک گرفته و به کمک راهکارهایی که در ادامه این مقاله معرفی میکنم به برطرف کردن خطا بپردازید.
در ادامه این مقاله قصد دارم به بررسی کامل نحوه حل مشکل سفید شدن وردپرس بپردازیم. این مشکل با ارور صفحه مرگ وردپرس نیز شناخته میشود که هر دو دلالت بر یک موضوع دارند. بنابراین اگر سایت خود را باز کردید و در صفحات مختلف با صفحهای سفید مواجه شدید، باید راهکارهایی که در این مقاله معرفی میکنم را برای حل مشکل انجام دهید.
صفحه سفید یا صفحه مرگ وردپرس چیست؟
مشکل صفحه سفید درست مثل صفحه آبی ویندوز است. وقتی چنین خطایی در وردپرس رخ میدهد، آدرس صفحات در سایت شما به صورت سفید بوده و هیچ محتوایی در آنها نمایش داده نمیشود. اگر به کمک ابزار view source منبع صفحات وب را بررسی کنید، هیچ کدی در آن نمیبینید. در واقع مرورگر از سرور شما پاسخ مناسبی دریافت نکرده و هیچ دادهای رندر نشده که به شما نمایش دهد.
خطای سفید شدن سایت وردپرسی دو حالت دارد که یا مربوط به پیشخوان وردپرس است و یا اینکه کلیه صفحات سایت که برای بازدیدکنندگان در دسترس هستند دچار این مشکل خواهند شد.
سفید شدن صفحه ادمین وردپرس wp admin
در این حالت صرفا صفحه پیشخوان وردپرس که در مسیر wp-admin قرار دارد دچار این خطا شده و به هر آدرسی که بعد از آن قرار دارد مراجعه کنید، با صفحه سفید مواجه خواهید شد.
در چنین حالتی چون دسترسی به پیشخوان وردپرس فراهم نبوده و از طریق صفحهی ورود هم نمیتوانید وارد وردپرس شوید، باید از هاست خود کمک گرفته و راهکارهایی که برای رفع خطا وجود دارد را بررسی و تست کنید تا خطا برطرف شود.
سفید شدن وردپرس در تمامی صفحات
در این حالت کارتان سادهتر بوده و صرفا صفحاتی که برای کاربران هم در دسترس هستند با این خطا مواجه هستند. در چنین شرایطی چون دسترسی به ادمین وردپرس فراهم است، میتوانید سریعتر مشکل را برطرف کنید.
درواقع در این حالت آدرس صفحاتی که مربوط به مطالب، برگهها، محصولات یا سایر پست تایپهای سفارشی دچار مشکل شدهاند سفید خواهد بود.
آموزش نحوه حل مشکل سفید شدن
حالا که با انواع خطای صفحه سفید در وردپرس آشنا شدید، در ادامه به معرفی 10 روش برای حل مشکل سفید شدن پیشخوان وردپرس و صفحات کاربری سایت میپردازم که با بررسی هر یک از این روشها میتوانید خطای white screen وردپرس را برطرف کنید.
قدم صفر: فعال کردن دیباگ وردپرس
پیش از این که بخواهید کاری کنید، باید از راهکاری که وردپرس برای یافتن علت خطا در اختیار قرار داده استفاده کنید. برای اینکه اهمیت این موضوع را نشان دهم از عنوان «قدم صفر» استفاده کردم.
فعال کردن دیباگ وردپرس نوعی خطایابی است که به شما امکان میدهد از طریق راهنمایی که در بخش نمایش خطا وجود دارد ببینید که دقیقا چه فایلی و در چه خطی باعث مشکل صفحه سفید در وردپرس شده است. برای این منظور کافی است کد زیر را به فایل wp-config.php که در مسیر نصب وردپرس قرار دارد اضافه کنید.
define( 'WP_DEBUG', true);
البته قبل از انجام این کار، با زدن دکمههای ترکیبی CTRL + F مقدار «WP_DEBUG» را جستجو کنید که در این فایل قرار نداشته باشد. اگر قرار نداشت کد بالا را مانند تصویر زیر اضافه کنید. اما اگر مقدار آن روی false قرار دارد، آن را مشابه کد بالا به true تغییر داده و ذخیره کنید.
با فعال کردن دیباگ وردپرس اگر مشکل از سمت فایلهای وردپرس باشد، یک سری خطا در بالا یا پایین سایت مشابه زیر مشاهده خواهید کرد.
Cannot redeclare get_posts() (previously declared in /var/www/html/wordpress/wp-includes/post.php:1874) in /var/www/html/wordpress/wp-content/plugins/my-test-plugin/my-test-plugin.php on line 38
با دنبال کردن مسیر فایل و بررسی خطی که این خطا در آن مشخص شده میتوانید مشکل را مرتفع کنید. برای جزییات بیشتر و نحوه خطایابی پیشنهاد میکنم مقاله آموزش دیباگ وردپرس را مطالعه کنید.
راهکار اول: غیرفعال کردن همهی افزونهها
بروز خطای صفحه سفید مرگ وردپرس میتوانید به دلایل مختلفی که مربوط به وردپرس یا هاست است رخ دهد. گاهی اوقات این اختلال که از سمت خود وردپرس رخ میدهد مربوط به افزونههاست که باید آنها را غیرفعال کرده و ببینید که کدام افزونه باعث سفید شدن صفحه ورود وردپرس شده است. در صورتی که جدیدا افزونهای نصب یا آپدیت کردن که به محض آن با صفحه مرگ وردپرس در wp admin یا کل سایت مواجه شدید کافی است همان افزونه را غیرفعال کنید.
در غیر این صورت میتوانید کلیهی افزونهها را غیرفعال کرده و در هر بار فعال کردن افزونه بررسی کرده و ببینید که آیا همچنان با خطای صفحه سفید در وردپرس مواجه هستید یا نه؟
برای این منظور اگر با مشکل سفید شدن صفحه ادمین وردپرس مواجه نیستید و به پیشخوان دسترسی دارید، کافی است مشابه تصویر زیر عمل کنید. وارد پیشخوان وردپرس شده و دستورالعملها را یکی یکی دنبال کنید.
- ابتدا روی منوی افزونهها در پیشخوان وردپرس کلیک کنید.
- به کمک تیکی که در کنار هر افزونه وجود دارد، افزونههایی که ضروری نیست را انتخاب کنید.
- از قسمت کارهای دسته جمعی گزینه غیرفعال کردن را انتخاب کنید.
- روی دکمه اجرا کلیک کنید.
با انجام این کار همه افزونههای انتخابی یک باره غیرفعال خواهند شد. اما در حالتی که دسترسی به پیشخوان وردپرس فراهم نباشد، باید از طریق هاست افزونهها را غیرفعال کرد. برای این منظور هم کافی است به ترتیب زیر عمل کنید.
- ابتدا وارد هاست خود شده و پس از اینکه به File Manager هاست مراجعه کردید، وارد پوشه public_html شوید.
- مسیری که وردپرس نصب شده را دنبال کنید تا وارد پوشه wp-content شوید. در این نمونه من وردپرس را در دامنه اصلی نصب کردم که کافی است مسیر public_html/wp-content را دنبال کنم. اما اگر از وردپرس در ساب فولدر استفاده میکنید، لازم است که مسیر public_html/FOLDER/wp-content را دنبال کنید.
- حال مشابه تصویر زیر باید روی پوشه plugins کلیک کرده و نام آن را با کمک گزینه RENAME به یک نام دلخواه مثل plugins-old تغییر داده و ذخیره کنید.
با انجام این کار همهی افزونهها در وردپرس از طریق هاست غیرفعال میشوند. اما اگر میخواهید که افزونههای خاصی را غیرفعال کنید باید وارد پوشه plugins شده و سپس افزونههایی که قصد غیرفعال کردنشان را دارید به همین ترتیب نام پوشه افزونه را تغییر نام دهید.
راهکار دوم: تغییر قالب وردپرس
مثل همان توضیحاتی که برای افزونهها ذکر کردم، گاهی اوقات این مشکل از سمت قالب رخ میدهد. برای این کار هم کافی است یک قالب دیگر را فعال کنید که ترجیحا بهتر است از قالبهای پیشفرض وردپرس مثل 2020، 2021 و… باشند که در هر سال میلادی یک قالب توسط وردپرس به عنوان قالب پیشفرض انتخاب میشود.
برای این منظور میتوانید یکی از قالبها پیشفرض وردپرس را فعال کنید. اگر به پیشخوان وردپرس دسترسی دارید، کافی است مطابق تصویر زیر به منوی نمایش> پوستهها رفته و قالب دیگری را فعال کنید(شماره گذاری ۱ و ۲ در تصویر زیر).
اما اگر دسترسی به این بخش ندارید مثل کاری که با پوشه افزونهها انجام دادید این بار باید با پوشه قالب فعال این کار را انجام داده و با تغییر نام دادن کاری کنید که وردپرس از قالب پیشفرض برای سایت شما استفاده کند. برای این منظور:
- ابتدا وارد هاست خود شده و پس از اینکه به File Manager هاست مراجعه کردید، وارد پوشه public_html شوید.
- مسیری که وردپرس نصب شده را دنبال کنید تا وارد پوشه wp-content شوید. در این نمونه من وردپرس را در دامنه اصلی نصب کردم که کافی است مسیر public_html/wp-content/themes را دنبال کنم. اما اگر از وردپرس در ساب فولدر استفاده میکنید، لازم است که مسیر public_html/FOLDER/wp-content/themes را دنبال کنید.
- حال مشابه تصویر زیر باید روی پوشه قالبی که در سایت فعال است کلیک کرده و نام آن را با کمک گزینه RENAME به یک نام دلخواه مثل X تغییر داده و ذخیره کنید.
نکته ای که باید در اینجا به آن دقت کنید این است که حداقل باید یکی از قالبهای پیشفرض وردپرس را نصب داشته باشید که با تغییر نام دادن نام پوشه قالب، وردپرس قالب پیشفرض را برای سایت فعال کند. اگر قالب دیگری ندارید میتوانید یکی از قالبهای پیشفرض را دانلود کرده و به کمک آموزش نصب قالب در وردپرس از طریق هاست سی پنل نصب و فعال کنید.
راهکار سوم: بالا بردن میزان حافظه PHP
از آنجایی که ممکن است به دلیل افزایش ترافیک و بازدید سایت مصرف منابع افزایش پیدا کند، گاهی اوقات نه تنها با خطای 503 در وردپرس مواجه میشوید که در بازههای زمانی خاصی ایجاد میشوند، بلکه ممکن است موجب ایجاد صفحه سفید وردپرس هم شوند. بنابراین یکی از راهکارها بالا بردن مقدار حافظه php وردپرس است.
روش اول: افزایش با فایل functions.php قالب
برای این منظور کافی است کدهای زیر را به فایل فانکشن قالبی که روی سایت فعال بوده و در مسیر wp-content/themes/folder قرار دارد اضافه کنید.
@ini_set('upload_max_size' , '128M'); @ini_set('post_max_size', '128M'); @ini_set('max_execution_time', '300');
روش دوم: افزایش حافظه php با فایل htaccess.
برای این منظور کافی است کدهای زیر را به انتهای این فایل که در مسیر public_html قرار دارد اضافه کنید.
php_value upload_max_filesize 64M php_value post_max_size 64M
روش سوم: افزایش حافظه php با فایل wp-config.php
وارد مسیری که وردپرس در public_html نصب کردید شده و به دنبال فایلی به نام wp-config.php بگردید. سپس کدهای زیر را در این فایل قرار دهید.
define('WP_MEMORY_LIMIT', '128M'); ini_set('post_max_size', '128M'); ini_set('upload_max_filesize', '128M');
راهکار چهارم: تغییر سطح دسترسی فایلهای وردپرس
گاهی اوقات عدم دسترسی به برخی فایلها در هسته وردپرس باعث ایجاد مشکل صفحه سفید مرگ وردپرس میشود. در چنین شرایطی هم میتوانید از طریق هاست سی پنل یا هاست دایرکت ادمین فایلها و پوشههای هسته وردپرس را بررسی کرده و ببینید که آیا تغییراتی داشتند یا نه؟
برای انجام این کار کافی است وارد هاست خود شده و به مسیر public_html در منوی file manager هاست وارد شوید. در این مسیر پوشهها و فایلهایی را مشابه تصویر زیر میبینید که هر کدام در ستون permissions دارای یک عدد ۴ رقمی هستند که با صفر آغاز شده است. این اعداد سطح دسترسی را برای کاربر، گروهی از افراد و حالت عمومی مشخص میکنند.
در صورتی که از وردپرس استفاده میکنید این اعداد باید برای پوشهها روی مقدار 0755 و برای فایلهای php وردپرس روی 0644 قرار داشته باشند. پس تک تک فایلهایی که در مسیر اصلی public_html برای وردپرس قرار دارد و همچنین فایلهایی که داخل پوشههای wp-content، wp-admin و wp-includes میبینید را باید بررسی کرده و سطح دسترسی را با انتخاب گزینه change permissions به مقدار درست آن تغییر دهید.
همانطور که در تصویر بالا میبینید کافی است با فعال یا غیر فعال کردن تیک گزینههایی که در هر ستون و ردیف قسمت زرد رنگ قرار دارد، به عدد نهایی که در مقابل permission نمایش داده میشود نگاه کنید و عدد درست را برای فایلها اعمال کنید.
راهکار پنجم: حذف حافظه کش وردپرس و مرورگر
گاهی اوقات این مشکل به صورت کش شده در مرورگر یا سرور قرار دارد. برای رفع این موضوع مطمئن شوید که حافظه کش وردپرس را در صورت استفاده از افزونههای کش وردپرس مانند wp rocket، w3 total cache و… خالی کنید.
همچنین از مرورگرهای دیگری استفاده کرده و سایت را باز کنید که مطمئن شوید در صورت حذف کش وردپرس و از سوی دیگر حافظه کش مرورگر، مشکل از همین جا بوده و برای سایر کاربران وجود نداشته باشد. برای اطمینان بیشتر میتوانید آدرس صفحهای که با ارور صفحه سفید وردپرس در آن مواجه شدید برای دوستانتان بفرستید.
راهکار ششم: بررسی فایل کانفیگ وردپرس
در برخی مواقع مشکل از سمت فایل wp-config.php وردپرس رخ میدهد که در حالتی که مشکل سفید شدن صفحه مدیریت و سایت وردپرس وجود داشته باشد میتوانید با اضافه کردن قطعه کد زیر به این فایل، آن را رفع کنید.
/** Trick for long posts */ ini_set('pcre.recursion_limit',20000000); ini_set('pcre.backtrack_limit',10000000);
راهکار هفتم: آپدیت یا جایگزینی هسته وردپرس
همانطور که در راهکار چهارم به میزان سطح دسترسی فایلها و پوشههای وردپرس اشاره کردم، گاهی اوقات این مشکل از هسته رخ میدهد. ممکن است یک فایل وردپرس هم از روی هاست حذف شده باشد یا در فرآیند آپدیت وردپرس به هر دلیلی جایگزینی آن فایل با موفقیت انجام نگرفته باشد که در چنین شرایطی هم میتوانید با آپدیت وردپرس یا جایگزینی دوباره آن مشکل را رفع کنید.
اگر به کمک راهکارهای بالا موفق به برطرف کردن ارور صفحه سفید وردپرس نشدید میتوانید یک بار جدیدترین نسخه وردپرس را دریافت کرده و در هاست خود آپلود کنید. برای این منظور روی دکمه زیر کلیک کنید تا جدیدترین نسخه وردپرس را از مخزن دریافت کنید.
بعد از دانلود فایل پوشه wp-content را از داخل آن حذف کنید. اگر هم فایلی با نام wp-config.php وجود دارد آن را نیز حذف کنید. سپس باقی فایلها و پوشهها را با همان حالتی که وجود دارند به حالت فشرده zip. تغییر داده و در هاست آپلود کنید. بعد از اینکه از حالت فشرده خارج کردید و فایلها و پوشههای وردپرس جایگزین شد، مشکل رفع خواهد شد.
یا اینکه میتوانید به قسمت پیشخوان> بهروزرسانیها مراجعه کرده و روی دکمهی راهاندازی مجدد که زیر عنوان «شما از آخرین نگارش وردپرس استفاده میکنید» وجود دارد کلیک کنید.
راهکار هشتم: تعمیر دیتابیس وردپرس
در برخی مواقع مشکل از سمت دیتابیس است که میتوانید با تعمیر کردن یا همان Repair آن را رفع کنید. برای این منظور ابتدا قطعه کد زیر را در فایل wp-config.php که در مسیر public_html یا مسیر نصب وردپرس در پوشه دیگری قرار دارد اضافه کنید.
define('WP_ALLOW_REPAIR', true);
سپس بعد از آدرس دامنه خود مقدار wp-admin/maint/repair.php را قرار دهید. در این حالت آدرس دامنه شما چیزی مثلhttps://serverpower.ir/wp-admin/maint/repair.php خواهد بود. در این صورت با صفحهای مشابه تصویر زیر مواجه میشوید که در این مرحله باید روی دکمهی تعمیر پایگاه داده کلیک کنید.
در این صورت چند لحظه که منتظر بمانید، بسته به بزرگی دیتابیس شما کلیه جداول یکی یکی بررسی شده و در مقابل آن نیز سالم بودن یا نبودن آنها نمایش داده میشود. پس از اتمام کار دیتابیس در هر جدولی که دارای مشکل باشد تعمیر خواهد شد.
راهکار نهم: با یک توسعه دهنده در ارتباط باشید
بعید میدانم با روشهایی که ذکر کردم نتوانید مشکل خود را برطرف کنید. اما اگر به هر دلیلی مشکلتان رفع نشد، میتوانید از یک توسعه دهنده وردپرس کمک بگیرید تا سایت شما را بررسی کرده و خطای سفید شدن صفحه وردپرس را رفع کند.
جمع بندی نهایی
در این مقاله به معرفی ۱۰ راهکار برای برطرف کردن مشکل صفحه سفید در پیشخوان وردپرس و کلیهی صفحات سایت پرداختم و به شما آموزش دادم که چه راهکارهایی برای برطرف کردن ارور white screen در وردپرس وجود دارد. شما میتوانید بر اساس ترتیب اهمیتی که در روشهای بالا ذکر کردم، مشکل صفحه مرگ وردپرس را به صورت کامل برطرف کنید.
البته اگر سوال برایتان شده که چطور ۹ راهکار معرفی شده، اما گفتم ۱۰ راهکار، قدم صفر که همان دیباگ وردپرس است اولین و سادهترین راهکار است که در ۹۹ درصد مواقع با استفاده از همان روش میتوانید مشکل را یافته و سپس بر اساس خطایی که در Syntax Errors وردپرس ثبت شده این مشکل را رفع کنید.