Debugging Mode (WordPress): verschil tussen versies
(8 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
Regel 3: | Regel 3: | ||
* <code>WP_DEBUG</code>: Output in browser | * <code>WP_DEBUG</code>: Output in browser | ||
* <code>WP_DEBUG_LOG</code>: Output logfile. | * <code>WP_DEBUG_LOG</code>: Output logfile. | ||
+ | |||
+ | Echter, soms werkt <code>WP_DEBUG</code> niet (server ''dvb8''). Wat in maart 2022 wel bleek te werken: | ||
+ | |||
+ | <pre> | ||
+ | ini_set('display_errors','Off'); | ||
+ | </pre> | ||
+ | |||
+ | Bij elkaar: | ||
+ | |||
+ | <pre> | ||
+ | /* That's all, stop editing! Happy blogging. */ | ||
+ | |||
+ | # Debugging mode | ||
+ | ######################################## | ||
+ | # | ||
+ | define('WP_DEBUG', false); | ||
+ | define('WP_DEBUG_LOG', true); | ||
+ | ini_set('display_errors','Off'); | ||
+ | </pre> | ||
== Voorbeeld: Productiesite == | == Voorbeeld: Productiesite == | ||
Regel 34: | Regel 53: | ||
define('WP_DEBUG', true); | define('WP_DEBUG', true); | ||
define('WP_DEBUG_LOG', true ); | define('WP_DEBUG_LOG', true ); | ||
+ | </pre> | ||
+ | |||
+ | == Als WP_DEBUG niet werkt == | ||
+ | |||
+ | In maart 2022 had ik de situatie, dat op server ''dvb8'' <code>WP_DEBUG</code> niet werkte. Wat wel werkte, was <code>ini_set('display_errors','Off');</code>. Bij elkaar (merk op dat '#' voor commentaarregels, geen enkel probleem is): | ||
+ | |||
+ | <pre> | ||
+ | /* That's all, stop editing! Happy blogging. */ | ||
+ | |||
+ | # Debugging mode | ||
+ | ######################################## | ||
+ | # | ||
+ | define('WP_DEBUG', false); | ||
+ | define('WP_DEBUG_LOG', true); | ||
+ | ini_set('display_errors','Off'); | ||
+ | </pre> | ||
+ | |||
+ | Mogelijke oorzaken: | ||
+ | |||
+ | * Dit is een relatief nieuwe server. Misschien heb ik vergeten om iets te installeren, bv. een bepaalde PHP-module? [https://aristath.github.io/blog/wp-hide-php-errors Deze site] zegt dat het <code>WP_DEBUG</code> soms niet werkt op goedkope serveromgevingen. Misschien dat ik iets heb vergeten? | ||
+ | * Dit werkt anders in PHP8? | ||
+ | |||
+ | Wat niet werkte: | ||
+ | |||
+ | <pre> | ||
+ | define('WP_DEBUG_DISPLAY', false); | ||
+ | define('WP DEBUG DISPLAY', false); | ||
+ | define('WP DEBUG', false); | ||
+ | </pre> | ||
+ | |||
+ | Mogelijk een grondige aanpak van het probleem [https://medium.com/@woraperth/wordpress-solution-when-define-wp-debug-false-is-not-working-b3fec50ffe95]: | ||
+ | |||
+ | <pre> | ||
+ | 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); | ||
</pre> | </pre> | ||
Regel 40: | Regel 98: | ||
* [[CSS-storing na migratie (WordPress)]] | * [[CSS-storing na migratie (WordPress)]] | ||
* [[Debugging (WordPress)]] | * [[Debugging (WordPress)]] | ||
+ | |||
+ | == Bronnen == | ||
+ | |||
+ | * https://aristath.github.io/blog/wp-hide-php-errors | ||
+ | * https://medium.com/@woraperth/wordpress-solution-when-define-wp-debug-false-is-not-working-b3fec50ffe95 |
Huidige versie van 8 mrt 2022 om 12:48
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 browserWP_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);