آموزش فعال کردن Debug در وردپرس

آموزش فعال کردن Debug در وردپرس

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

Debug به چه معناست؟

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

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

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

فعال سازی DEBUG در وردپرس

فعال کردن دیباگ احتمالاً ساده ترین راه برای مشاهده مشکلات و خطاها در سایت وردپرس است. اما متأسفانه، برخی از توسعه دهندگان این کار را انجام نمی دهند، فعال سازی دیباگ وردپرس بسیار ساده بوده و شما با ویرایش فایل wp-config.php به راحتی می توانید WP_DEBUG را فعال کرده و تمامی مشکلات و خطاهای سایت خود را مشاهده کنید. گزارشات کمک زیادی به رفع مشکلات سایت شما خواهد کرد.

ابتدا وارد هاست خود شده و روی مدیریت فایل کلیک کنید:

مدیریت فایل cPanle

در صفحه باز شده روی Public_html کلیک کنید:

public_html در cPanel

سپس فایل wp-config.php را پیدا روی آن راست کلیک کنید و Edit را انتخاب کنید تا صفحه ویرایش فایل باز شود:

wp-config.php در cPanle

در صفحه ویرایش به دنبال کد define( 'WP_DEBUG', true ); باشید. در این بخش شما می توانید به چندین روش خطاهای سایت خود را مشاهده کنید.

هشدار : قبل از ویرایش فایل حتما یک نسخه پشتیبان از سایت خود تهیه کنید ( آموزش پشتیبان گیری از وردپرس )

نکته : کدهای نمونه را قبل از خط /* That's all, stop editing! Happy blogging. */ قرار دهید.

WP_DEBUG

WP_DEBUG یک متغیر ثابت و دائمی برای اشکال زدایی در تمامی بخش های وردپرس است، مقدار این متغیر در حالت پیشفرض false بوده که در صورت نیاز باید مقدار آن را به true تغییر دهید:

define( 'WP_DEBUG', true );

نکته : مقدار true و false را در تمامی موارد بدون آپستروف ( '' یا "" ) قرار دهید چرا که مقدار boolean بوده و در صورتی که به اشتباه مقدار را "false" تنظیم کنید، به عنوان صحیح یا true تفسیر می شود. لازم به ذکر است که استفاده از wp_debug در سایت های در دسترس عموم توصیه نمی شود چرا که خطاهای موجود برای تمام کاربران نمایش داده می شود.

آیا WP_DEBUG تمامی خطاها را نشان می دهد؟

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

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

WP_DEBUG_LOG

این متغیر نیز در واقع یک مکمل برای WP_DEBUG بوده و و به شما امکان می دهد که تمامی خطاها را در یک فایل مشاهده کنید. عملکرد ای ثابت به اینصورت است که تمامی خطاها را در یک فایل به نام debug.log ذخیره می کند، استفاده از این روش اشکال زدایی در صورتی مفید است که بخواهید خطاها را از دید کاربران مخفی کرده و در یک فایل مشاهده کنید این روش خطاهای موجود در درخواست های AJAX و اجرای wp-corn را نیز نمایش می دهد.

اگر مقدار را برابر true قرار دهید مسیر پیشفرض فایل پوشه wp-content بوده که این مسیر از سمت شما قابل تغییر است مثال زیر هردو روش را نشان می دهد.

// wp-content/debug.log
define( 'WP_DEBUG_LOG', true );
// tmp/wp-errors.log
define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log' );

نکته : برای اینکه WP_DEBUG_LOG به طور کامل خطاها را نمایش دهید باید WP_DEBUG نیز فعال باشد.

WP_DEBUG_DISPLAY

این متغر نیز یکی دیگر از مکمل های WP_DEBUG است که مشخص می کند خطاهای موجود در صفحات HTML نمایش داده شوند یا نه، در واقع شما مشخص می کنید که خطاها در صفحات سایت نمایش داده نشوند، این مورد در صورتی کاربرد دارد که قصد داشته باشید خطای موجود را فقط در فایل log مشاهده کنید، مقدار پیشفرض این متغیر ثابت برابر true است که برای مخفی سازی خطا ها باید این مقدار را به false تغییر دهید برای مثال:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

SCRIPT_DEBUG

وردپرس در حالت پیشفرض از نسخه های فشرده شده فایل های css و javascript استفاده می کند، با فعال کردن SCRIPT_DEBUG می توانید از این روند جلوگیری کنید تا وردپرس از فایل های اصلی استفاده کند، استفاده از این روش در هنگام اعمال تغییرات روی اسکریپت ها برای جلوگیری از هرگونه تداخل مفید است.

define( 'SCRIPT_DEBUG', false );

SAVEQUERIES

SAVEQUERIES کوئری های دیتابیس را در یک آرایه ذخیره می کند و این آرایه می تواند به جهت بهبود و تجزیه و تحلیل کوئری ها نمایش داده شود، با فعال کردن SAVEQUERIES هر کوئری به همراه نام و مدت زمان اجرای آن ذخیره می شود. این آرایه در متغیر جهانی $wpdb->queries ذخیره می شود.

ddefine( 'SAVEQUERIES', true );

نکته : فعال سازی SAVEQUERIES بر روی عملکرد سایت شما تاثیر می گذارد، هنگامی که با آن نیاز ندارید SAVEQUERIES را غیر فعال کنید.

افزونه های دیباگ و اشکال زدایی وردپرس

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

جمع بندی

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