Si WP_DEBUG n'est pas défini, si je comprends bien, vous ne devriez jamais voir d'avertissement. Mais sur certains sites sur certains serveurs, j'en vois encore quelques-uns. Pas tous les avertissements qui seraient affichés si WP_DEBUG était défini, mais quelques-uns.
J'ai essayé de changer le niveau d'erreur dans php.ini, mais cela semble n'avoir aucun effet sur l'apparition ou non des avertissements, mais ils apparaissent en quantités différentes sur différents serveurs (c'est-à-dire aucun avertissement sur le développement, un avertissement sur la mise en scène et quelques avertissements supplémentaires sur la production).
Réponses:
WP_DEBUG n'a aucun impact sur la sortie d'erreur PHP. En plus du paramètre error_reporting, définissez display_errors = 0 dans votre fichier php.ini. Il est activé par défaut pour le développement. Mais vous voudrez le désactiver sur les serveurs de production.
la source
Remplacer
avec ça:
la source
Il est également possible que cette ligne soit déjà définie sur false. Dans ce cas, vous verrez le code suivant:
Dans les deux cas, vous devez remplacer cette ligne par le code suivant:
N'oubliez pas de sauvegarder vos modifications et de télécharger votre fichier wp-config.php sur le serveur.
la source
Essayez de désactiver / supprimer tous les avertissements / avis d'erreur dans votre
wp-config.php
(en haut). Quoi qu'il en soit: les erreurs ne sont rien de mal. Ils vous donnent la possibilité de corriger votre code.la source
Pour les environnements WordPress, il n'y a généralement aucune raison d'utiliser
ini_set
car c'est ce que les constantes définies fournies par WordPress Core réalisent déjà. La façon dont PHP fonctionne est que certains paramètres peuvent être remplacés dans votre CMS (WordPress), dans des scripts individuels, et même par utilisateur ou par répertoire (à la grande frustration des hébergeurs et des agences Web).Pour désactiver les erreurs d'affichage sur la page dans WordPress, le seul paramètre dont vous avez vraiment besoin est:
... car quand
WP_DEBUG
est désactivé, les sous-options sont alors inactives:Gardez à l'esprit que l'
WP_DEBUG_LOG
option déroutante se réfère uniquement à la création dedebug.log
dans le répertoirewp-content
et n'affecte pas les autres paramètres de journalisation, etc.Encore une fois, les paramètres de WordPress peuvent remplacer les paramètres PHP par défaut, donc vos paramètres PHP n'ont pas autant d'importance que d'avoir des paramètres corrects dans votre
wp-config.php
fichier, qui se charge avant les autres composants WP.Cela dit, c'est une bonne idée d'implémenter les paramètres par défaut comme ci-dessous en production:
Pour un exemple complet, reportez-vous à notre fichier SlickStack php.ini optimisé pour Nginx et PHP-FPM.
Dans un cas, après des heures de recherche, nous avons réalisé qu'un plugin (ou thème) remplaçait les différents paramètres de gestion des erreurs précédemment définis dans
php.ini
etwp-config.php
. La seule façon d'empêcher cela est de supprimer le plugin ou le thème WordPress qui essaie de "pirater" vos paramètres PHP, ou de leur dire de le supprimer parce que c'est une très mauvaise pratique pour les extensions de remplacer les options de débogage de votre CMS.Dans SlickStack, nous avons créé un script Bash qui "marque" les lignes
ini_set
et leserror_reporting
fichiers PHP dans les répertoires/themes/
et/plugins/
en mettant en évidence de telles instances à l'aide d'un plug- in MU (script PHP) qui affiche une liste de ces "hacks" dans le tableau de bord d'administration WP.la source