فعالسازی مود دیباگ وردپرس
برای فعال کردن مود دیباگ وردپرس فایل wp-config.php وردپرس را ویرایش کرده و کد
define('WP_DEBUG', false);
را یافته و آن را به صورت زیر تغییر دهید.
define('WP_DEBUG', true);
در این حالت خروجی مود دیباگ وردپرس (شامل خطاهای php) در صفحات سایت در مرورگر نمایش داده خواهد شد.
فعالسازی لاگبرداری از خروجی مود دیباگ
به منظور ذخیره خروجی مود دیباگ در یک فایل بر روی سایت کد زیر را در یک خط پس از کد فعال سازی مود دیباگ (WP_DEBUG) در فایل wp-config.php اضافه کنید.
define('WP_DEBUG_LOG', true);
اضافه کردن این کد باعث می شود که وردپرس علاوه بر نمایش خروجی دیباگ در صفحات سایت این اطلاعات را در فایلی با نام debug.log در شاخه wp-content وردپرس ذخیره کند.
wp-content/debug.log
غیر فعال کردن نمایش خروجی دیباگ در صفحات سایت
برای غیر فعال کردن نمایش خروجی دیباگ در صفحات سایت کد زیر را پس از کد فعال سازی مود دیباگ به فایل wp-config.php اضافه کنید:
define('WP_DEBUG_DISPLAY', false); @ini_set('display_errors', 0);
نمونه کامل کد فعال سازی و تنظیم مود دیباگ
کد زیر مجموعه کد مورد نیاز برای فعال سازی مود دیباگ وردپرس، غیر فعال کردن نمایش خروجی دیباگ در صفحات سایت و همچنین فعال کردن لاگ برداری خروجی دیباگ در فایل wp-content/debug.log را نمایش میدهد.
// Enable WP_DEBUG mode define('WP_DEBUG', true); // Enable Debug logging to the /wp-content/debug.log file define('WP_DEBUG_LOG', true); // Disable display of errors and warnings define('WP_DEBUG_DISPLAY', false); @ini_set('display_errors', 0);
این کد می بایست پیش از خط زیر به فایل wp-config.php وردپرس اضافه شود.
/* That's all, stop editing! Happy blogging. */
غیر فعال کردن مود دیباگ وردپرس
برای غیر فعال کردن مود دیباگ وردپرس مقدار ثابت WP_DEBUG در فایل wp-config.php را از true به false تغییر دهید:
define('WP_DEBUG', false);
سفارشیسازی خروجی مود دیباگ
خطاهای php از نوع notice, strict, deprectated معمولا در هنگام عیبیابی وردپرس مورد نیاز نیستند. با این وجود تعداد این خطاها در خروجی دیباگ بسیار زیاد بوده که این موضوع میتواند باعث دشواری بررسی خروجی دیباگ گردد. به خصوص این خطاها بررسی لاگ دیباگ را دشوار کرده و همچنین باعث افزایش بسیار سریع سایز فایل لاگ میشوند که این موضوع امکان فعال سازی طولانی مدت مود دیباگ جهت شناسایی خطاهای نادر را با مشکل جدی مواجه می کند. به منظور حذف این خطاها از خروجی مود دیباگ وردپرس میتوانید به صورت زیر عمل کنید:
- بر روی سرویس هاستینگ خود به شاخه wp-content وردپرس رفته و شاخهای با نام mu-plugins را در این مسیر ایجاد کنید.
- وارد شاخه mu-plugins شده و فایلی با نام error-reporting.php در این شاخه ایجاد کنید.
- فایل error-reporting.php را وایریش کرده و کد زیر در این فایل قرار دهید.
<?php error_reporting(E_ALL & ~( E_DEPRECATED | E_USER_DEPRECATED | E_USER_NOTICE | E_STRICT | E_NOTICE)); ?>
این کد توسط وردپرس پیش از کد تمامی افزونهها و پوسته اجرا شده و باعث میشود که خطاهای مورد اشاره ناشی از کد افزونهها و پوسته از خروجی مود دیباگ حذف شوند.
فعال سازی دسترسی وب به فایل debug.log
به منظور جلوگیری از دسترسی افراد غیر مجاز به فایل debug.log وردپرس بر روی سرویسهای میزبانی وب ارایه شده، دسترسی به این فایل از سوی نتافراز به صورت پیش فرض بر روی سرویسها مسدود شده است. پیشنهاد میشود جهت دسترسی به این فایل از مدیریت فایل در دایرکتادمین یا سرویس FTP استفاده کنید. چنانچه همچنان مایل به دسترسی به این فایل از طریق وب هستید، حهت فعال سازی دسترسی برای آدرس IP اینترنت خود، کافی است کد زیر را به فایل .htaccess در شاخه wp-content وردپرس اضافه کنید (در صورت عدم وجود یک فایل جدید با این نام ایجاد کنید).
<Files "debug.log"> Order deny,allow Allow from IPADDR Deny from all </Files>
به جای IPADDR میبایست آدرس IP اینترنت خود را وارد نمایید.