فعال سازی دیباگ یا Debug وردپرس چیست؟
اگر مدیر یک سایت وردپرسی هستید احتمالاً با پیام های اینچنینی مواجه شده اید:
- یک خطای مهم در این وب سایت رخ داده است
- یک خطای غیرمنتظره رخ داد
- به دلیل داشتن مشکلی جدی افزونه فعال نشد
- سایت با مشکلات فنی مواجه است
- سایت مشکلات فنی را تجربه می کند
- و…
اگر در هنگام پردازش صفحات سایت، وردپرس با خطا مواجه شود با پیغام های فوق روبرو خواهید شد. این پیام ها بسیار کلی است و نمی دانید کجا به دنبال خطا بگردید. در این شرایط خطایابی و اشکال زدایی از وب سایت وردپرسی بسیار سخت به نظر خواهد رسید. اما پیش از این طراحان وردپرس به این شرایط فکر کرده و فعال سازی دیباگ یا حطایابی را در نظر گرفته اند.
با فعال سازی حالت دیباگ، خطاها و هشدارهایی که در پردازش صفحه وجود دارند با جزئیات دقیق در بالای سایت نمایش داده می شود و شما می توانید با استفاده از این اطلاعات بفهمید که خطا دقیقاً در کدام فایل روی داده است. حال اصلاح و اشکال زیادی بسیار راحت تر از قبل انجام خواهد شد.
چگونه حالت دیباگ یا اشکال زدایی وردپرس را فعال کنیم؟
به صورت پیش فرض حالت دیباگ غیر فعال است تا اگر خطا یا هشداری غیر جدی در سایت وجود دارد بازدیدکنندگان سایت و کاربران عادی از آن مطلع نشوند. اما شما می توانید با ایجاد یک تغییر کوچک در فایل wp-config، حالت اشکال زدایی و خطایابی وردپرس را فعال و کنترل نمایید.
برای فعال سازی دیباگ وردپرس به شیوه زیر عمل کنید:
- ابتدا وارد کنترل پنل هاست (سی پنل / دایرکت ادمین) شوید
- به قسمت فایل منیجر بروید و وارد بخش فایل های وردپرس شوید
- فایل wp-config.php را بیابید و آن را ویرایش کنید
- WP_DEBUG را جستجو کنید و بجای عبارت false از true استفاده کنید
// فعال سازی دیباگ وردپرس
define('WP_DEBUG', true);
این کد حالت دیباگ را در سراسر وردپرس فعال خواهد کرد و باعث می شود در صورت بروز کوچکترین خطا، جزئیات آن در بالای صفحه نمایش داده شود.
آموزش ورود به کنترل پنل هاست – سی پنل و دایرکت ادمین
آپشن های دیباگ
پیام های خطا در فعال سازی دیباگ وردپرس به تمامی کسانی که از این صفحه بازدید می کنند (چه مدیران سایت چه کاربران عادی) نمایش داده می شود.
احتمالاً شما نیز با این موضوع موافقید که نمایش خطاهای سایت به بازدیدکنندگان عادی سایت، جالب نیست. به همین دلیل آپشن های مختلفی همراه با حالت دیباگ قابل کنترل هستند.
عدم نمایش خطا به کاربران عادی
هم زمان به فعال شدن حالت خطایابی و دیباگ می توانید کاری کنید که خطاها در صفحات نمایش داده نشود وب سایت به صورت عادی به کار خود ادامه دهد. برای این منظور کد زیر را در فایل wp-config قرار دهید:
// جزئیات خطا در صفحات نمایش داده نمی شوند.
define('WP_DEBUG_DISPLAY', false);
عبارت true به معنای نمایش پیام خطا و عبارت false به معنای عدم نمایش پیام های خطاست.
پیشنهاد می کنیم همیشه دیباگ وردپرس فعال باشد ولی نمایش خطاها را به صورت موقت فعال کنید و پس از بررسی و رفع مشکلات، مجدداً نمایش خطا را غیر فعال کنید.
ذخیره گزارش های خطا در فایل دیباگ
با فعال شدن حالت ذخیره پیام، کلیه گزارش خطاها در فایلی به نام debug.log واقع در فولدر wp-content ذخیره بر حسب زمان رویداد، ذخیره خواهد شد و هر زمان که بخواهید می توانید به این فایل مراجعه و کلیه خطاهایی که در وب سایت روی داده است را مشاهده نمایید. بدین منظور کد زیر را در فایل wp-config قرار دهید:
// کلیه خطاها در فایل دیباگ ذخیره می شوند/wp-content/debug.log
define('WP_DEBUG_LOG', true);
به مانند کدهای بالا می توانید از عبارت های true و false برای فعال سازی و غیر فعال سازی این آپشن استفاده کنید.
نحوه استفاده از گزارش خطا
در گزارش خطای حالت دیباگ، نوع خطا و محل وقوع آن (فایل و کدهای حاوی خطا) مشخص شده اند. با جستجوی عنوان خطا در گوگل می توانید دلیل وقوع و راهکار حل مشکل را پیدا کنید.
گاهی اوقات خطا به دلیل اختلال در عملکرد افزونه ها یا قالب وب سایت شماست. با مشخص شدن فایل حاوی خطا بدون غیر فعال سازی همه افزونه ها یا قالب ها، مستقیماً فایل افزونه یا قالب دارای خطا را پیدا کرده و آن را اصلاح نمایید. در این شرایط فرایند خطایابی بسیار ساده خواهد شد. همچنین می توانید با ارائه کد خطا به پشتیبان قالب یا افزونه مورد نظر، کار را با سرعت بیشتری پیش ببرید.
سوالات متداول
دیباگ وردپرس چیست؟
به حالت خطایابی پیشرفته وردپرس دیباگ گفته می شود. در این حالت اگر وردپرس در پردازش صفحات با خطا یا هشداری مواجه شود آن را در صفحات سایت به بازدیدکنندگان نمایش خواهد داد.
از حالت اشکال زدایی وردپرس به چه منظوری استفاده می شود؟
اگر مدیر سایت تشخیص دهد که وب سایت دارای خطاست و صفحات وردپرس به درستی اجرا نمی شوند حالت دیباگ یا اشکال زدایی را فعال می کند تا در صورتی که خطایی در کدهای سایت وجود دارد منشأ و مقصر آن را پیدا کند.
آیا نمایش خطاهای سایت به کاربران درست است؟
مسلماً بهتر است گزارش های حالت دیباگ به کاربران عادی نمایش داده نشود. این موضوع از جنبه امنیتی نیز حائز اهمیت است.
چگونه گزارش خطاهای دیباگ را به کاربران عادی نمایش ندهیم؟
کد زیر را در فایل wp-config قرار دهید تا گزارشات خطا را از دید کاربران عادی مخفی کنید. مدیران می توانند با مراجعه به فایل debug.log واقع در wp-content گزارشات خطا را مشاهده نمایند.
define(‘WP_DEBUG_DISPLAY’, false);
define(‘WP_DEBUG_LOG’, true);
آیا بهتر است حالت Debug همیشه فعال باشد؟
بله بهتر است همیشه حالت دیباگ فعال باشد و ضمن مخفی کردن گزارش خطا در صفحات، آن را در فایل debug.log ذخیره کرد. البته در نظر داشته باشید که افزایش سایز این فایل، موجب اشغال فضای هاست خواهد شد. می توانید هر از گاهی ان را حذف نمایید. فایل مجدداً به طور اتوماتیک ساخته می شود.
آیا افزونه برای فعال سازی حالت دیباگ وردپرس وجود دارد؟
بله می توانید از افزونه wp debugging استفاده کنید. ولی با توجه به اینکه فعال سازی حالت دیباگ به راحتی توسط چند قطعه کد انجام می شود استفاده از افزونه پیشنهاد نمی شود.
8 پاسخ
فایل config کجاست؟ هرچی گشتم پیداش نکردم؟
داخل فایل منیجر هاستتون بشید. فایل های سایتتون باید در فولدر public-html باشه. اونجا فولدرهای اصلی وردپرس یعنی wp-content و wp-admin و wp-include رو میبینید. در کنار اونها هم یه سری فایل پی اچ پی هست. فایل wp-config.php یکی از اونهاست.
سایت من به درستی کار میکنه ولی الان که دیباگ رو فعال کردم دیدم کلی خطا وجود داره. اینها رو چکارشون کنم؟ مشکل ساز نیستن؟ چطوری میتونم رفعشون کنم؟
ممکنه قالب و افزونه های شما قدیمی شدن یا مشکلاتی در کدنویسی قالب وجود داشته باشه و تولید ارور و وارنینگ کنه. این خطاها از اونجا که بحرانی نیستن ممکنه مشکلی در نمایش سایت ایجاد نکنه ولی به هرحال بهتره بهشون رسیدگی بشه. هرخطا رو باید جداگانه مورد بررسی قرار داد و به نوبت رفعشون کرد. پیشنهاد میکنم مقاله “اولین گام برای خطایابی وردپرس | بررسی افزونه ها، قالب و وردپرس” رو مطالعه بفرمایید.
سلام. مرسی که هستین. من دیباگ رو فعال کردم چندتایی هشدار توی بخش های مختلف سایت داره ولی سایتم بدون مشکل کار میکنه وقتی دیباگ رو غیر فعال میکنم. این ها بعداً مشکل ساز نمیشه؟ پیشاپیش از پاسخگوییتون ممنونم
درود بر شما و سپاس از لطفتون
بهتره که پیام ها رو بخونید و تا اونجا که امکانش هست خطاها و هشدارها رو برطرف کنید. اگر سایتتون مشکلی برای لود نداره لزومی نداره نگران بشید. میتونید دیباگ رو فعال نگه دارید و با کدهای داده شده صرفاً نمایشش در فرانت سایت رو خاموش کنید و اونها رو در فایل خطاها، لاگ کنید.
سلام. آموزش عالی بود. من تازه متوجه شدم هی بهم پیام میداده سایت مشکل فنی داره اشکال کار کجاست. خیلی ممنونم. سایتم خطا داره
Fatal error: Allowed memory size of 134217728 bytes exhausted
ممنون میشم بگید اینو چیکارش کنم.
درود بر شما. خوشحالم که این آموزش بدردتون خورده. سایتتون با کاهش فضای حافظه مواجه شده. مقاله آموزشی “رفع خطای کمبود حافظه Memory Exhausted در وردپرس” رو مطالعه بفرمایید.