Debugging Mode (WordPress)

Uit De Vliegende Brigade
Versie door Jeroen Strompf (overleg | bijdragen) op 8 mrt 2022 om 12:48 (→‎Als WP_DEBUG niet werkt)
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Naar navigatie springen Naar zoeken springen

Je kunt instellen waar en hoe een WordPress debugging informatie presenteert; de zogenaamde debugging mode. Dit geschiedt doorgaans in bestand wp-config.php. Het gaat om twee variabelen, waarvan eigenlijk alleen de eerste aangepast hoeft te worden:

  • WP_DEBUG: Output in browser
  • WP_DEBUG_LOG: Output logfile.

Echter, soms werkt WP_DEBUG niet (server dvb8). Wat in maart 2022 wel bleek te werken:

ini_set('display_errors','Off');

Bij elkaar:

/* That's all, stop editing! Happy blogging. */

# Debugging mode
########################################
#
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', true);
ini_set('display_errors','Off');

Voorbeeld: Productiesite

Voor productiesites is het gebruikelijk om geen browser-output te hebben, maar wel naar logbestanden. Voorbeeld van een site in mei 2021:

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 */
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', true);

Voorbeeld: Ontwikkelsite

Voorbeeld van instellingen rondom debugging mode voor een ontwikkelsite, of een productiesite die ge-debugged wordt:

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 */
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true );

Als WP_DEBUG niet werkt

In maart 2022 had ik de situatie, dat op server dvb8 WP_DEBUG niet werkte. Wat wel werkte, was ini_set('display_errors','Off');. Bij elkaar (merk op dat '#' voor commentaarregels, geen enkel probleem is):

/* That's all, stop editing! Happy blogging. */

# Debugging mode
########################################
#
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', true);
ini_set('display_errors','Off');

Mogelijke oorzaken:

  • Dit is een relatief nieuwe server. Misschien heb ik vergeten om iets te installeren, bv. een bepaalde PHP-module? Deze site zegt dat het WP_DEBUG soms niet werkt op goedkope serveromgevingen. Misschien dat ik iets heb vergeten?
  • Dit werkt anders in PHP8?

Wat niet werkte:

define('WP_DEBUG_DISPLAY', false);
define('WP DEBUG DISPLAY', false);
define('WP DEBUG', false);

Mogelijk een grondige aanpak van het probleem [1]:

ini_set('log_errors','On');
ini_set('display_errors','Off');
ini_set('error_reporting', E_ALL );
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Zie ook

Bronnen