3
votes

Erreur PHP: Attention: count (): Le paramètre doit être un tableau ou un objet qui implémente Countable

J'ai mis à jour mon site Wordpress de PHP 5.6 à 7.2 et j'ai remarqué une erreur dans mon backend Wordpress après la mise à jour. Il dit:

if ( count( $_posts ) ) {
$_id = $_posts->ID;
} else {

J'ai inclus le code de cette ligne et 2 lignes en dessous. Toute aide serait appréciée.

Warning:  count(): Parameter must be an array or an object that implements 
Countable in <b>/homepages/36/d362586048/htdocs/genag/wp- 
content/themes/genag- 
theme/framework/admin/functions/functions.mediauploader.php on line 127


1 commentaires

accepter ma modification. votre question semble mauvaise sans modification.


3 Réponses :


5
votes

$ _posts semble être un objet, vous devriez l'utiliser comme un objet $ _posts-> ID . Il ne peut donc pas être compté comme un tableau.

if ( $_posts ) {

Devrait faire l'affaire


1 commentaires

Cela a réglé le problème! Je vous remercie.



0
votes

http://php.net/manual/en/function.count.php

Vous pouvez utiliser la fonction is_countable () en php pour vérifier si un objet prend en charge la fonctionnalité de comptage.


0 commentaires

1
votes

En PHP 7.2, la méthode count () ne prend pas en charge Null comme paramètre.

J'ai la même erreur , dans l'un de mes anciens sites Web WordPress basés sur un thème Avada.

Je l'ai résolu en utilisant la modification suivante.

if ( (!empty($_posts)) && (count( $_posts ) ) { $_id = $_posts->ID; } else {


0 commentaires