wp_debug در وردپرس به چه معناست و این ویژگی چه کاربردی دارد؟
Debug در زبان انگلیسی به معنی عیب یابی یا اشکال زدایی و در سیستم های کامپیوتری به معنی یافتن عیوب و از بین بردن خطاها میباشد.
پس بعد از فهمیدن معنی این کلمه احتمالا میتوان حدس زد که این ویژگی وردپرس در مورد چه چیزی است پس بیایید تا دقیقتر و مو شکافانهتر به توصیف این ویژگی بپردازیم.
همانطور که میدانیم هیچ سیستمی خالی از خطا واشتباه نمیباشد و سیستمهای کامپیوتری هم از این قاعده مستثنا نیستند اما وردپرس با گنجاندن ویژگی wp_debug به کاربران وردپرس این امکان را داده تا بتوانند مشکلات سایت خود را به راحتی پیدا کرده و به حل مشکلات ان بپردازند،مشکلات عجیب و غریبی که خود به خود ظاهر میشوند و اغلبا باعث سردرگمی کاربران وردپرس میشود.
پس بیایید باهم به نحوه کار و انجام مراحل این ویژگی کاربردی بپردازیم.
پیدا کردن خطاها با wp_debug در وردپرسht
بهتر است اول بدانیم wp_debug چیست و اصول کار ان چگونه است؟
اگر بخواهیم به زبان ساده این ویژگی را بیان کنیم،ابزاری برای عیب یابی در وردپرس محسوب میشود که اگر فعال باشد منبع ومنشا خطا در وردپرس را نشان خواهد داد. به عبارتی نشان میدهد خطایی که در وردپرس مشاهده میکنید از کجا سرچشمه میگیرد.
ایا باید در زمان مشخصی از این ویژگی استفاده کنیم؟
اگرچه وردپرس به تمامی توسعه دهندگان خود پیشنهاد کرده است که از این ویژگی، قبل از انتشار قالبها و افزونههای خود استفاده کنند تا کنترل حداکثری روی افزونه وردپرس خود داشته باشند و از این طریق بتوانند تمام ایرادات و خطاهای افزونه خود را تحت کنترل قرار دهند. اما در حالت کلی، هر زمانی که به مشکلی در وردپرس خوردید (مثلا وقتی وارد قسمت “پوستهها” در وردپرس میشوید، چیزی مشاهده نمیکنید) و نتوانستید دریابید این خطا به چه علت است و منبع و دلیل آن چیست، میتوانید از حالت عیب یابی در وردپرس با wp_debug استفاده کنید.
اما چگونه عیب یابی یا همان wp_debug وردپرس را فعال کنیم؟
اما چگونه این ویژگی را فعال کنیم؟
برای فعال کردن wp_debug، وارد هاست خود شده و به قسمتی که فایلهای وردپرس قرار دارند، بروید. فایل wp-config.php را پیدا کنید و روی دکمه Edit کلیک کنید تا ویرایشگر هاست شما باز شود. حال در بین کدهای موجود در این قسمت، کد ;(define(‘WP_DEBUG’, false را پیدا کنید. اگر این کد در فایل wp-config.php وجود نداشت، خودتان آن را درست قبل از عبارت /* That’s all, stop editing! Happy blogging. */ قرار دهید.
یافتن debug در فایل wp-config.php
همانگونه که مشاهده میکنید، مقدار پیش فرض این تابع false است که به معنی خاموش بودن ویژگی عیب یابی است. برای فعال کردن حالت عیب یابی وردپرس، کلمه false را به true تغییر دهید و تغییرات را ذخیره کنید. اکنون حالت عیب یابی وردپرس برای پیدا کردن خطاها با wp_debug در وردپرس فعال خواهد شد.
حال به صفحات مختلف سایت خود سر بزنید و ببینید آیا در بالای صفحه خطایی نمایش داده میشود یا خیر. ممکن است در صفحه اصلی خطایی وجود نداشته باشد اما خطایی در صفحات جانبی مثلا یکی از مقالههای سایت خود دریافت کنید. اگر هم کلا چیزی مشاهده نکردید، تبریک میگویم سایت شما خطایی ندارد.
نکته مهم: بهتر است این ویژگی زمانی که سایت در دسترس عموم قرار دارد فعال نشود.زیرا خطاهایی که نمایش داده میشوند ممکن است افراد سودجو اطلاعاتی را بدست اورند که باعث شود که از طریق ان بتوانند به سایت شما لطمه بزنند.
دریافت گزارش خطا در وردپرس با wp_debug_log
اگر میخواهید لیست خطاها یا debug در وردپرس در فایلی جمع اوری شود که بتوانید بعدا هم از آن استفاده کنید، باید حالت wp_debug_log را فعال کنید. برای انجام این کار کد زیر را درست بعد از کد wp_debug که در مرحله قبل وارد کردید، قرار دهید:
define(‘WP_DEBUG_LOG’, true);
config.php
اکنون برای دسترسی به فایل موردنظر،کافی است وارد فایل منیجر هاست خود شوید و به قسمتی که فایلهای وردپرس قرار دارند، بروید. سپس وارد پوشه wp-content شوید. در صورتی که این سیستم خطایی را تشخیص دهد، آن خطا را در فایلی به نام debug.log لیست میکند که میتوانید این فایل را دانلود کنید و جزئیات مربوط به خطا مانند تاریخ و زمان وقوع خطا را دریافت کنید.
مشاهده تمامی خطاها در فایل debug.log
اگر نیازی به دسترسی به این فایل ندارید، میتوانید مقدار true مربوط به این حالت را به false تغییر دهید تا بعدا بتوانید این ویژگی را فعال کنید یا اینکه کلا کد مربوطه را حذف کنید.
فعال کردن حالت عیب یابی بدون نمایش خطاها در صفحات سایت
همانطور که در بالا اشاره کردیم نمایش خطاها در معرض عموم برای سایت شما میتواند خطرناک باشد. اما بعضی اوقات واقعا نیاز داریم از این ویژگی خوب و کاربردی وردپرس استفاده کنیم و در عین حال نمیخواهیم این خطاها را کاربران ببینند.ولی نگران نباشید وردپرس امکان جالبی دارد که میتواند خطاها را جمع آوری کند، اما به جای نمایش خطاها در صفحات سایت، آنها را فقط در یک فایل debug.log ذخیره کند. در این صورت میتوانید تمامی خطاها را در فایل debug.log مشاهده کنید بدون اینکه خطایی در سایت شما ظاهر شود و سپس به پیدا کردن خطاها با wp_debug در وردپرس بپردازید. برای این کار کد زیر را در خط بعدی کد قبلی قرار دهید:
define(‘WP_DEBUG_DISPLAY’, false);
عیب یابی
چگونه خطاهای وردپرس را برطرف کنیم؟
حالا بعد از اینکه خطاها را پیدا کردیم چه کاری باید انجام دهیم؟ ما تا اینجا خطاها را پیدا کردیم،اما ایا با پیدا کردن مشکلات کار تمام میشود؟ مسلما باید آنها را برطرف کنیم که دیگر مشکلی در سایتمان وجود نداشته باشد.در بعضی مواقع برای رفع خطاها باید مهارت و دانش برنامه نویسی داشته باشیم. به عنوان مثال بعضی خطاها مربوط به عدم درستی یک خط در یکی از فایلهای افزونهای خاص است که در این مورد، وردپرس خط دارای اشکال را مشخص میکند و شما باید با مراجعه به خط مذکور، مشکل را حل کنید. این مشکلات میتواند به خاطر موارد ساده مثل نگذاشتن علامت ; در کد یا مشکلات خیلی پیچیدهتر باشد که باید حتما برای حل آن به یک متخصص مراجعه کنید.
نکته:بهتر است قبل از هرکاری نگاهی به خطاهای رایج در وردپرس بیاندازید،احتمالا بعضی از مشکلاتی که در سایت خود مشاهده میکنید در آنها پیدا شوند و بتوانید به راحتی آن را حل کنید.
سخن پایانی:
حالا با این ویژگی کاربردی اشنا شده ایم و میتوانیم از این ویژگی استفاده کنیم اما به یاد داشته باشید که تمام این پیامها به معنی خطا نبوده و صرفا به عنوان هشدار میباشند که بهتر است انهارا جدی بگیریم.