Suite à la mise à jour de PHP, mon fichier d’erreurs du site a commencé à afficher le message suivant :
PHP Warning: Creating default object from empty value in /wp-content/themes/skyminds/functions.php on line 1213
La ligne en question correspond à :
$posts[0]->comment_status = 'closed';
Code language: PHP (php)
Le problème réside dans le fait que $posts
n’est pas explicitement défini et comme les versions récentes de PHP tournent maintenant avec le mode E-STRICT par défaut, on obtient une erreur. Il existe deux solutions – soit mettre :
$posts = new stdClass();
Code language: PHP (php)
s’il sagit d’un objet, soit mettre :
$posts = array();
Code language: PHP (php)
s’il s’agit d’une associative array, juste avant la ligne de code incriminée. Dans mon cas, l’array()
est la bonne solution.
Rencontrez-vous des défis avec votre site WordPress ou WooCommerce? Laissez-moi les résoudre pour vous.
Je viens d’avoir cette erreur en passant en prod un site sous codeigniter (aucun warning en dev) et aucune des 2 solutions ne passe malheureusement.
Est ce que depuis tu aurais trouvé une autre solution supplémentaire?
Merci