حالت عیب یابی وردپرس یک ویژگی داخلی است که به شما امکان میدهد پیامهای خطا را دقیقتر نمایش داده و ثبت کنید. این ویژگی به ویژه پس از افزودن کد سفارشی که ممکن است باعث بروز مشکل شود، برای حفظ عملکرد وبسایت شما بسیار مهم است. این آموزش حالت عیب یابی وردپرس و روشهای مختلف فعال کردن آن را توضیح میدهد. از آنجا که این روشها برای وظایف مختلف عیب یابی مناسب هستند، یکی را بر اساس نیازهای خود انتخاب کنید.
تصویر(۱)
حالت عیب یابی وردپرس چیست؟
دیباگ وردپرس یک قابلیت داخلی است که به توسعهدهندگان اجازه میدهد پیامهای خطا را برای عیب یابی نمایش دهند یا لیست کنند. میتوانید این قابلیت را با فعالسازی متغیرهای سراسری PHP مانند WP_DEBUG و SCRIPT_DEBUG فعال کنید. همچنین میتوانید با استفاده از افزونه، دادههای مهم مانند اجرای اسکریپتها را نمایش دهید
نحوه فعال کردن حالت عیب یابی وردپرس به وسیله کدنویسی
در این بخش، نحوه فعالسازی حالت دیباگ وردپرس توسط چهار متغیر مختلف PHP، متناسب با نیازهای عیب یابی، توضیح داده میشود.
۱. فعال کردن WP_DEBUG
فعال کردن WP_DEBUG سادهترین راه برای عیب یابی وردپرس است. این قابلیت مشکلات کد PHP را در بخشهای مختلف وبسایت، از جمله قالبها و افزونهها بررسی میکند. برای فعالسازی این متغیر، مقدار آن را در فایل wp-config.php از FALSE به TRUE تغییر دهید. قبل از انجام این کار، مطمئن شوید که میتوانید با استفاده از یک برنامه FTP (مانند FileZilla) یا مدیریت فایل (File Manager) هاست میزبان خود، به پوشه اصلی وردپرس دسترسی پیدا نمایید.
اگر از یک برنامه FTP استفاده میکنید، باید فایل PHP را دانلود کرده، آن را روی رایانه خود ویرایش کرده و دوباره در وبسایت آپلود نمایید. در زیر مراحل انجام این کار درون File Manager سی پنل که به شما امکان میدهد wp-config.php را مستقیماً در مرورگر وب خود ویرایش کنید، توضیح داده خواهد شد.
- وارد cPanel شوید. به بخش Files → File Manager بروید.
- به پوشه اصلی public_html وردپرس خود بروید.
- فایل wp-config.php را در حالت edit باز کنید.
- خط زیر را پیدا نمایید. اگر این ورودی یافت نشد، آن را به صورت دستی بعد از خط $table_prefix = ‘wp_’; اضافه کنید:
define( 'WP_DEBUG', false );
عیب یابی وردپرس با مثال:
- مقدارش را از false به TRUE تغییر دهید.
- فایل را ذخیره کنید و ببندید.
اکنون، اگر مشکلات PHP وجود داشته باشد، وردپرس پیامهای خطا را در فرانتاند نمایش میدهد.
نکته: برای بهبود تجربه کاربری، میتوانید پیامهای خطا را با تنظیم مقدار WP_DEBUG_DISPLAY به FALSE مخفی نمایید. همچنین برای ثبت خطاها درون فایل debug.log در پوشه wp-content، از متغیر WP_DEBUG_LOG استفاده کنید.
if ( ! defined( 'WP_DEBUG' ) ) {
define( 'WP_DEBUG', true );
define('WP_DEBUG_DISPLAY', false);
define('WP_DEBUG_LOG', true);
}
به یاد داشته باشید، وردپرس پیامهایی را که بعد از فعال کردن متغیر WP_DEBUG_LOG رخ میدهند ثبت میکند. اگر میخواهید مسائل قبلی را مستند کنید، باید آنها را به صورت دستی تکرار نمایید. اگر میخواهید حالت عیب یابی وردپرس را غیرفعال کنید، کافی است که WP_DEBUG_DISPLAY و WP_DEBUG_LOG را روی FALSE تنظیم نمایید تا از اجرای نامحدود این ویژگیها و هدر رفتن منابع جلوگیری شود.
تصویر(۲)
۲.فعال کردن SCRIPT_DEBUG
به طور پیشفرض، وردپرس فایلهای اصلی جاوا اسکریپت (JS) و CSS را در حالت فشرده اجرا میکند که در این حالت ویژگیهای غیرضروری مانند پیامهای خطا پنهان میشوند. اگرچه این رفتار موجب بهبود زمان بارگذاری وبسایت می گردد اما میتواند فرآیند عیب یابی را دشوارتر کند؛ زیرا اطلاعات دقیق قابل مشاهده نخواهد بود.
برای عیب یابی فایلهای اصلی JS و CSS، امکان فعالسازی نسخههای توسعه با استفاده از متغیر SCRIPT_DEBUG وجود دارد. چنین اقدامی بهویژه پس از اعمال تغییرات ظاهری در وبسایت با استفاده از این زبانهای برنامهنویسی بسیار کاربردی است. مراحل فعالسازی متغیر SCRIPT_DEBUG مشابه مراحل WP_DEBUG است. در ادامه، نحوه انجام این کار از طریق File Manager سی پنل توضیح داده میشود:
- به پوشه اصلی public_html وردپرس خود بروید.
- فایل wp-config.php را در حالت edit باز کنید.
خط مرتبط با متغیر SCRIPT_DEBUG را پیدا نموده و مقدار آن را از FALSE به TRUE تغییر دهید در صورت نبود این خط، عبارت زیر قبل از خط “That’s all stop editing” اضافه گردد:
define( 'SCRIPT_DEBUG', true );
سپس فایل را ذخیره کنید و ببندید.
پس از این تغییرات، در صورت بروز مشکلات مربوط به فایلهای اصلی CSS یا JavaScript، پیامهای خطا نمایش داده خواهند شد.
۳. فعال کردن گزارش خطای PHP
فعال سازی گزارش گیری PHP از طریق ویرایش فایل php.ini امکانپذیر است. برخی ارائهدهندگان میزبانی وب به دلایل امنیتی این قابلیت را غیرفعال میکنند.
کاربرانی که از پلن های میزبانی هاست های لینوکس (سی پنل) میهن وب هاست استفاده میکنند، میتوانند این ویژگی را از طریق cPanel فعال نمایند. مراحل انجام این کار به شرح زیر است:
- ورود به cPanel و بخش Software → MultiPHP INI Editor
- انتخاب دایرکتوری مربوط به وردپرس
- فعالسازی نمایش خطاها با علامت زدن گزینه display_errors
- اسکرول به پایین و کلیک روی دکمه apply
۴. فعال کردن گزارش خطای WPDB
برای عیب یابی وردپرس (پایگاه داده)، میتوان متغیر show_errors در کلاس wpdb را فعال کرد. با این تنظیم، خطاهای SQL مستقیماً در وبسایت نمایش داده میشوند که به شناسایی مشکلات مرتبط با اتصال پایگاه داده و خطاهای نحوی کمک میکند.
مراحل فعالسازی گزارش خطاهای WPDB به شرح زیر است:
- پوشه public_html وبسایت وردپرس باز کنید و سپس به دایرکتوری wp-includes وارد شوید.
- فایل class-wpdb.php را درحالت edit باز نمایید.
خط مربوط به class wpdb پیدا کرده و در پرانتزهای این کلاس، مقدار متغیر show_errors$ را به صورت زیر، با TRUE جایگزین نمایید:
public $show_errors = true;
سپس فایل را ذخیره کنید و ببندید.
فعال کردن حالت عیب یابی وردپرس با استفاده از افزونه
اگر با کدنویسی راحت نیستید، میتوانید حالت عیب یابی وردپرس را با استفاده از افزونهها فعال کنید. یکی از گزینههای مناسب، افزونه WP Debugging است که به شما امکان میدهد مقدار متغیر WP_DEBUG را مستقیماً از داشبورد وردپرس تنظیم کنید. برای این کار مراحل زیر را انجام دهید:
- افزونه WP Debugging را از طریق داشبورد مدیریت وردپرس دانلود و نصب کنید.
- به مسیر “ابزارها” سپس WP Debugging بروید.
- گزینه “فعال کردن WP_DEBUG” را انتخاب نمایید. همچنین میتوانید مشخص کنید که خطاها در بخش فرانتاند سایت نمایش داده شوند یا از نمایش خطاهای بحرانی صرفنظر گردد.
- روی ذخیره تغییرات کلیک کنید.
برای تجزیهوتحلیل دقیقتر، پیشنهاد میشود از افزونه Query Monitor استفاده کنید. این افزونه اطلاعات مفیدی برای عیب یابی مانند پرسوجوهای پایگاه داده، خطاهای PHP و اجرای اسکریپتها ارائه میدهد.
تصویر(۳)
نحوه استفاده از Query Monitor
پس از نصب این افزونه، منویی در نوار مدیریت وردپرس شما ظاهر میشود. با کلیک روی آن، میتوانید اطلاعات مختلفی را مشاهده کنید:
- مرور کلی: خلاصه جزئیات وبسایت، شامل تعداد کوئری ها، میزان استفاده از حافظه و زمان بارگذاری صفحات.
- کوئری های پایگاه داده: لیستی از تمام اتصالات پایگاه داده هنگام بارگذاری صفحه که میتواند برای شناسایی خطاهای SQL یا مشکلات اتصال مفید باشد.
- گزارشها: نمایش پیامهای خطا از اجزای PHP مانند افزونهها.
- اسکریپتها: لیستی از فایلهای JavaScript بارگذاریشده با جزئیات منبع و موقعیت آنها.
- استایلها: اطلاعات مربوط به فایلهای CSS مورد استفاده در رندر صفحات وب.
جمع بندی
برای فعالسازی حالت عیب یابی وردپرس و تسهیل فرایند شناسایی مشکلات، ابتدا باید به فایل wp-config.php درون دایرکتوری اصلی سایت دسترسی پیدا کرده و مقادیر WP_DEBUG و WP_DEBUG_LOG را به TRUE تغییر دهید. این کار به شما امکان میدهد که پیامهای خطا را مشاهده و ثبت نمایید. اگر ویرایش کد برای شما راحت نیست، میتوانید از افزونههای WP Debugging و Query Monitor استفاده کنید که امکانات مفیدی برای عیب یابی و تحلیل دادهها ارائه میدهند. این روشها به شما کمک میکنند تا به راحتی مشکلات سایت خود را شناسایی و برطرف کنید.