
وردپرس با PHP ساخته شده و وقتی مشکلی در سایت شما پیش میآید، دیدن خطاهای PHP میتواند به شما در تسریع عیبیابی کمک کند. خبر خوب اینکه وردپرس دارای یک ابزار داخلی برای نمایش خطاهای PHP است. تنها مشکل این است که این ابزار تا حدودی پنهان است و نیاز دارد که یک خط کد به فایل wp-config.php خود اضافه کنید. در این مقاله، نحوه فعالسازی و غیرفعالسازی نمایش خطا PHP در وردپرس را به شما نشان خواهیم داد.
خاموش کردن خطاهای PHP در وردپرس
خطاهای PHP میتوانند برای عملکرد و تجربه کاربری وبسایت شما مضر باشند. آنها نه تنها ظاهر سایت شما را مختل میکنند، بلکه میتوانند اطلاعات حساسی در مورد ساختار وبسایت شما را نیز افشا کنند و آن را در برابر تهدیدات امنیتی آسیبپذیر سازند. حفظ حضور آنلاین حرفهای و ایمن برای جلوگیری از خطاهای PHP ضروری است. حالا، بیایید به مراحل غیرفعال کردن خطاهای PHP در وردپرس با استفاده از cPanel بپردازیم:
مرحله ۱: به داشبورد وردپرس خود دسترسی پیدا کنید
به حساب cPanel خود که توسط سرویس میزبانی وب شما ارائه شده است، وارد شوید.
در داشبورد سیپنل خود، آیکون «File manager» را پیدا کنید و روی آن کلیک کنید.
مرحله ۲: به فایل wp-config.php بروید
در مدیریت فایل، به دایرکتوری که وبسایت وردپرس شما در آن نصب شده است بروید. این معمولاً دایرکتوری public_html یا یک زیرشاخه در آن است.
فایل wp-config.php را در دایرکتوری وردپرس خود جستجو کنید.
حتما بخوانید: آموزش افزایش حافظه php در وردپرس
مرحله ۳: فایل wp-config.php را ویرایش کنید
روی فایل wp-config.php کلیک راست کرده و گزینه «edit» را انتخاب کنید.
به دنبال خطی باشید که میگوید define(‘WP_DEBUG’, true); :
خط را با کد زیر جایگزین کنید:
ini_set(‘display_errors’,’Off’);
ini_set(‘error_reporting’, E_ALL );
define(‘WP_DEBUG’, false);
define(‘WP_DEBUG_DISPLAY’, false);
مرحله ۴: تغییرات خود را ذخیره کنید
تغییراتی که در فایل wp-config.php ایجاد کردید را ذخیره کنید.
مرحله ۵: تغییرات را تأیید کنید
برای اطمینان از غیرفعال شدن خطاهای PHP، به وبسایت خود مراجعه کنید و صفحات مختلف آن را مرور کنید. اگر دیگر پیامهای خطا را مشاهده نمیکنید، تبریک میگویم، شما با موفقیت خطاهای PHP را در وردپرس غیرفعال کردهاید!
روشن کردن نمایش خطاهای PHP
اگر وبسایت شما از PHP استفاده میکند و آنطور که انتظار میرود کار نمیکند، نمایش پیامهای خطای PHP میتواند به شما کمک کند تا مشکلات احتمالی درون کد را به طور موثر شناسایی و برطرف کنید. اگر از وردپرس استفاده میکنید، به مدیریت فایل (File Manager) بروید و فایل public_html/wp-config.php خود را باز کنید. سپس، خط اشکالزدایی (debugging) را جستجو کنید:
define('WP_DEBUG', false);
define('WP_DEBUG_DISPLAY', true);
نمایش و ثبت خطاها از طریق فایل htaccess.
شما میتوانید خطاهای PHP را با استفاده از فایل htaccess در یک فایل لاگ دلخواه خود ثبت کنید. ابتدا، قبل از ایجاد هرگونه تغییر، از فایل htaccess یک نسخه پشتیبان تهیه کنید، زیرا تنظیمات نادرست میتواند وبسایت شما را غیرقابل دسترس کند. یا اگر فایل htaccess وجود ندارد، میتوانید آن را ایجاد کنید. در مرحله بعد، خطوط زیر را به فایل htaccess وبسایت خود اضافه کنید:
# log PHP errors to a file php_flag log_errors on php_value error_reporting 32767 php_value error_log "error_log.txt"
نمایش و ثبت خطاها با هر یک از این روشها به شما در عیبیابی کد PHP خود کمک میکند. اگر برای حل علل هر خطایی به کمک بیشتری نیاز دارید، میتوانید از یک توسعهدهنده کمک بگیرید.
فعالسازی مجدد برای نمایش خطای php
پیامهای خطای PHP زمانی مفید هستند که میخواهید بررسی کنید کد شما به درستی کار میکند. آنها یک نام فایل، شماره خط و پیامی که خطا را به مرورگر توضیح میدهد، برمیگردانند. پس از عیبیابی، فراموش نکنید که دوباره این عملکرد را غیرفعال کنید.
- وارد پنل کنترل هاست خود شوید.
- در قسمت تنظیمات پیشرفته، روی تنظیمات PHP و پایگاه داده کلیک کنید.
- به پایین اسکرول کنید تا به پیامهای خطای PHP برسید.
- گزینه ON را انتخاب کنید.
- بهروزرسانی را کلیک کنید.
علت بروز خطاهای پی اچ پی در وردپرس
این خطا میتواند به سادگیِ یک نقطه ویرگولِ از دست رفته یا به پیچیدگیِ فراخوانی یک متغیر نادرست باشد. خطاهای PHP میتوانند به دلیل عوامل مختلفی از جمله قالب، افزونهها، پایگاه داده یا حتی پیکربندی سرور شما رخ دهند. بارگذاری بیش از حد منابع در وبسایت وردپرس شما با افزونهها میتواند احتمال این خطاها را افزایش دهد.
مدیریت خطاهای PHP با افزونه وردپرس
اگرچه مخزن افزونههای وردپرس گزینههای مختلفی برای دریافت گزارشها دارد، اما همه آنها بهطور خاص گزارشهای خطای PHP را ارائه نمیدهند. اینجاست که افزونه Error Log Monitor از Janis Elsts وارد عمل میشود. این افزونه بسیار سادهای است که دقیقاً یک کار انجام میدهد: دریافت گزارشهای خطای PHP، و این کار را بهخوبی انجام میدهد.
برای استفاده از آن، به بخش افزونهها در داشبورد وردپرس خود بروید و روی افزودن افزونه جدید کلیک کنید. عبارت Error Log Monitor را جستجو کنید، روی نصب و سپس روی فعالسازی کلیک کنید. کار تمام است!
این کار یک نمای جدید در داشبورد مدیریت سایت وردپرس شما اضافه میکند که در آن میتوانید گزارش خطای PHP خود را مشاهده کنید. همچنین به شما این امکان را میدهد که خطاها را به عنوان حلشده علامتگذاری کنید یا آنها را نادیده بگیرید و همچنین گزارش خطا را پاک کنید. همچنین مکان فایل گزارش خطا را ارائه میدهد که میتواند برای کاربران فنیتر مفید باشد. تنها مشکل این افزونه این است که نمیتوانید گزارشها را همانطور که در داشبورد شما نمایش داده میشود دانلود کنید.
روش افزونه برای اکثر کاربران کافی است زیرا آسان است و گزارشهای خطا را در محل پیشفرض پوشه wp-content در دایرکتوری روت ایجاد میکند. با این حال، اگر شما یک کاربر حرفهای هستید که میخواهید گزارشهای خطا را در یک دایرکتوری/فایل جداگانه ایجاد کنید، افزونه این امکان را به شما نمیدهد. در این صورت، میتوانید از یکی از روشهای دستی زیر برای ایجاد گزارشهای خطای وردپرس استفاده کنید.
حتما بخوانید: نحوه خاموش کردن نمایش خطاهای PHP
بهترین روشهای مقابله با خطاهای php
استفاده از گزارش خطا: یکی از اولین گامها برای جلوگیری از خطاها و هشدارهای PHP، فعال کردن گزارش خطا در محیط توسعه شماست. این به شما کمک میکند تا هرگونه خطای نحوی، منطقی یا زمان اجرا را در کد خود قبل از انتشار آن در محیط تولید شناسایی و برطرف کنید. میتوانید از تابع error_reporting() یا فایل php.ini برای تنظیم سطح گزارش خطای مورد نظر خود استفاده کنید. به عنوان مثال، میتوانید از error_reporting(E_ALL) برای نمایش همه خطاها و هشدارها یا از error_reporting(E_ERROR | E_WARNING | E_PARSE) برای نمایش فقط مهمترین آنها استفاده کنید.
استانداردهای کدنویسی را رعایت کنید: راه دیگر برای جلوگیری از خطاها و هشدارهای PHP، پیروی از استانداردهای کدنویسی منسجم و واضح است. استانداردهای کدنویسی مجموعهای از قوانین و دستورالعملها هستند که به شما کمک میکنند کدی خوانا، قابل نگهداری و ایمن بنویسید. آنها جنبههایی مانند قراردادهای نامگذاری، تورفتگی، کامنتها، براکتها، فاصلهها و موارد دیگر را پوشش میدهند. میتوانید از یک ویرایشگر کد یا ابزاری مانند PHP_CodeSniffer برای بررسی و اجرای استانداردهای کدنویسی در کد خود استفاده کنید. به عنوان مثال، میتوانید از استاندارد PSR-12 استفاده کنید که به طور گسترده توسط جامعه PHP پذیرفته شده است.
اعتبارسنجی و پاکسازی ورودی کاربر: ورودی کاربر یکی از رایجترین منابع خطاها و هشدارهای PHP و همچنین آسیبپذیریهای امنیتی است. شما هرگز نباید به ورودی کاربر اعتماد کنید و همیشه قبل از استفاده از آن در کد خود، آن را اعتبارسنجی و پاکسازی کنید. اعتبارسنجی به معنای بررسی این است که آیا ورودی کاربر معیارهای خاصی مانند قالب، طول، نوع یا محدوده را برآورده میکند یا خیر. پاکسازی به معنای حذف یا حذف هرگونه کاراکتر مضر یا ناخواسته، مانند تگهای HTML، نقل قولها یا اسلشها است. میتوانید از توابع داخلی PHP مانند filter_var()، filter_input() یا htmlspecialchars() یا کتابخانهای مانند PHP-Filter برای اعتبارسنجی و پاکسازی ورودی کاربر استفاده کنید.
از مدیریت خطای مناسب استفاده کنید: حتی اگر بهترین شیوهها را برای جلوگیری از خطاها و هشدارهای PHP دنبال کنید، ممکن است هنوز با موقعیتهای غیرمنتظره یا اجتنابناپذیری مواجه شوید که باعث ایجاد آنها میشوند. در این صورت، باید از تکنیکهای مناسب مدیریت خطا برای شناسایی و مدیریت آنها به طرز شایستهای، بدون ایجاد اختلال در عملکرد سایت یا افشای اطلاعات حساس، استفاده کنید. میتوانید از توابع داخلی PHP مانند set_error_handler()، trigger_error() یا error_log() یا کتابخانهای مانند Monolog برای مدیریت خطاها و هشدارها در کد خود استفاده کنید. به عنوان مثال، میتوانید از set_error_handler() برای تعریف یک تابع سفارشی که انواع مختلف خطاها و هشدارها را مدیریت میکند و از error_log() برای ثبت آنها در یک فایل یا ایمیل استفاده کنید.
کد خود را آزمایش و اشکالزدایی کنید: آخرین مرحله برای جلوگیری از خطاها و هشدارهای PHP، آزمایش و اشکالزدایی کامل کد شما قبل از انتشار نهایی است. آزمایش و اشکالزدایی فرآیندهای ضروری هستند که به شما کمک میکنند هرگونه اشکال، خطا یا هشدار را در کد خود پیدا کرده و برطرف کنید و اطمینان حاصل کنید که سایت شما مطابق انتظار کار میکند و الزامات را برآورده میکند. میتوانید از ابزارها و روشهای مختلفی برای آزمایش و اشکالزدایی کد خود استفاده کنید، مانند آزمایش واحد، آزمایش ادغام، پوشش کد، نقاط شکست، اجرای گام به گام و موارد دیگر. به عنوان مثال، میتوانید از PHPUnit، چارچوبی برای آزمایش واحد کد PHP، یا Xdebug، افزونهای برای اشکالزدایی کد PHP، استفاده کنید.
جمع بندی
یکی از خطاهایی که ممکن است در وردپرس برایتان رخ دهد، خطا PHP در وردپرس است که به دلایل بسیاری ممکن است مشاهده شود. تمامی دلایل و مسائلی که موجب بروز خطای php میشود در این مقاله مورد بررسی قرار گرفته که یکی از مهمترین آن استفاده از منابع زیادی است. اما جای هیچ گونه نگرانی نیست چون به روشهای دستی و با کمک افزونه میتوان به راحتی این مسئله را رفع کرد. تمامی این موارد در این محتوا موجود است و میتوانید روش مناسب خود را انتخاب کنید.