Bird
Raised Fist0
Wordpressframework~20 mins

Debugging with WP_DEBUG in Wordpress - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
WP_DEBUG Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🔧 Debug
intermediate
2:00remaining
What happens when WP_DEBUG is set to true?
In a WordPress site, if you set define('WP_DEBUG', true); in wp-config.php, what is the expected behavior?
ANothing changes; WP_DEBUG has no effect.
BThe site will automatically fix all PHP errors.
CThe site will disable all plugins to prevent errors.
DPHP errors and warnings will be displayed on the site pages.
Attempts:
2 left
💡 Hint
Think about what debugging means and what showing errors helps with.
❓ component_behavior
intermediate
2:00remaining
Effect of WP_DEBUG_DISPLAY set to false
If WP_DEBUG is true but define('WP_DEBUG_DISPLAY', false); is also set, what will happen?
AErrors will be logged but not shown on the site pages.
BErrors will be shown on the site pages and logged.
CErrors will cause the site to crash immediately.
DErrors will be neither logged nor shown.
Attempts:
2 left
💡 Hint
Think about separating error display from error logging.
📝 Syntax
advanced
2:00remaining
Correct way to enable error logging in WordPress
Which code snippet correctly enables error logging to a file in WordPress?
A
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
B
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', 'false');
C
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', true);
Ddefine('WP_DEBUG_LOG', true);
Attempts:
2 left
💡 Hint
Both WP_DEBUG and WP_DEBUG_LOG must be true to log errors.
❓ state_output
advanced
2:00remaining
What file stores logged errors when WP_DEBUG_LOG is true?
When WP_DEBUG_LOG is set to true, where does WordPress save the error logs by default?
Awp-content/uploads/error.log
Bwp-content/debug.log
Cwp-includes/error.log
Droot directory error.log
Attempts:
2 left
💡 Hint
Think about the folder where WordPress stores content files.
🧠 Conceptual
expert
2:00remaining
Why avoid enabling WP_DEBUG on a live site?
Why is it generally not recommended to have WP_DEBUG set to true on a live WordPress site?
ABecause it automatically deletes all user data.
BBecause it disables all caching, slowing down the site.
CBecause it can expose sensitive error details to visitors, risking security.
DBecause it prevents plugins from updating.
Attempts:
2 left
💡 Hint
Think about what showing errors publicly might reveal.

Practice

(1/5)
1. What is the main purpose of enabling WP_DEBUG in WordPress?
easy
A. To speed up the website loading time
B. To display and log PHP errors and warnings for debugging
C. To disable all plugins temporarily
D. To change the website theme automatically

Solution

  1. Step 1: Understand WP_DEBUG role

    WP_DEBUG is a constant in WordPress that helps developers see PHP errors and warnings.
  2. Step 2: Identify its main use

    It is used to display and log errors to help fix issues during development.
  3. Final Answer:

    To display and log PHP errors and warnings for debugging -> Option B
  4. Quick Check:

    WP_DEBUG shows errors = B [OK]
Hint: WP_DEBUG shows errors to help fix bugs [OK]
Common Mistakes:
  • Thinking WP_DEBUG speeds up the site
  • Confusing WP_DEBUG with plugin management
  • Assuming WP_DEBUG changes themes
2. Which line correctly enables debugging in the wp-config.php file?
easy
A. define('WP_DEBUG', false);
B. define(WP_DEBUG, true);
C. WP_DEBUG = true;
D. define('WP_DEBUG', true);

Solution

  1. Step 1: Check correct syntax for defining constants in PHP

    Constants are defined using define('NAME', value); with quotes around the name.
  2. Step 2: Identify correct value to enable debugging

    Setting WP_DEBUG to true enables debugging.
  3. Final Answer:

    define('WP_DEBUG', true); -> Option D
  4. Quick Check:

    Correct PHP constant syntax with true = C [OK]
Hint: Use define('WP_DEBUG', true); with quotes and semicolon [OK]
Common Mistakes:
  • Missing quotes around WP_DEBUG
  • Using assignment (=) instead of define()
  • Setting WP_DEBUG to false to enable debugging
3. Given this code in wp-config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
What happens when a PHP error occurs?
medium
A. Error is logged to debug.log but not shown on the website
B. Error is neither shown nor logged
C. Error is shown on the website and logged to debug.log
D. Error is shown on the website but not logged

Solution

  1. Step 1: Analyze WP_DEBUG_DISPLAY setting

    WP_DEBUG_DISPLAY is set to false, so errors are not shown on the website.
  2. Step 2: Analyze WP_DEBUG_LOG setting

    WP_DEBUG_LOG is true, so errors are logged to the debug.log file.
  3. Final Answer:

    Error is logged to debug.log but not shown on the website -> Option A
  4. Quick Check:

    Display false + Log true = A [OK]
Hint: Display false hides errors; log true saves them [OK]
Common Mistakes:
  • Assuming errors show on site when WP_DEBUG_DISPLAY is false
  • Thinking errors are not logged if not displayed
  • Confusing WP_DEBUG_LOG with WP_DEBUG_DISPLAY
4. You enabled WP_DEBUG but no errors appear on your site or in the log file. What is the most likely cause?
medium
A. You forgot to set WP_DEBUG_LOG to true
B. You set WP_DEBUG_DISPLAY to true
C. You set WP_DEBUG to false
D. You did not save the wp-config.php file

Solution

  1. Step 1: Check WP_DEBUG status

    WP_DEBUG is enabled, so errors should appear or be logged.
  2. Step 2: Check if errors are logged

    If WP_DEBUG_LOG is not true, errors won't be saved to the log file.
  3. Final Answer:

    You forgot to set WP_DEBUG_LOG to true -> Option A
  4. Quick Check:

    Logging off means no error logs = A [OK]
Hint: Enable WP_DEBUG_LOG to save errors to file [OK]
Common Mistakes:
  • Thinking WP_DEBUG_DISPLAY controls logging
  • Assuming WP_DEBUG false but errors show
  • Not saving wp-config.php after changes
5. You want to debug a plugin error but avoid showing errors to visitors. Which settings in wp-config.php should you use?
hard
A. define('WP_DEBUG', false); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);
B. define('WP_DEBUG', false); define('WP_DEBUG_LOG', false); define('WP_DEBUG_DISPLAY', true);
C. define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);
D. define('WP_DEBUG', true); define('WP_DEBUG_LOG', false); define('WP_DEBUG_DISPLAY', true);

Solution

  1. Step 1: Enable debugging without showing errors

    Set WP_DEBUG to true to enable debugging and WP_DEBUG_DISPLAY to false to hide errors from visitors.
  2. Step 2: Enable logging to capture errors

    Set WP_DEBUG_LOG to true to save errors to the debug.log file for review.
  3. Final Answer:

    define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false); -> Option C
  4. Quick Check:

    Debug on + Log on + Display off = D [OK]
Hint: Show no errors but log them with WP_DEBUG_DISPLAY false [OK]
Common Mistakes:
  • Turning off WP_DEBUG disables all error reporting
  • Showing errors to visitors by setting WP_DEBUG_DISPLAY true
  • Not enabling WP_DEBUG_LOG so errors are lost
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard