web-dev-qa-db-fra.com

"Index non défini" dans wp-includes/media.php

Je les vois toujours sur mon tableau de bord

Avis: Index non défini: complet dans /home2/guyfancy/public_html/cafe4apps.net/wp-includes/media.php à la ligne 215

Avis: Index non défini: complet dans /home2/guyfancy/public_html/cafe4apps.net/wp-includes/media.php à la ligne 216

Avis: Index non défini: complet dans /home2/guyfancy/public_html/cafe4apps.net/wp-includes/media.php à la ligne 217

Avis: Index non défini: complet dans /home2/guyfancy/public_html/cafe4apps.net/wp-includes/media.php sur Et récemment, il a également commencé à apparaître au début

1
user166415

Pour quiconque trébuche sur ce problème, j'ai trouvé une cause possible.

Lorsque vous exécutez wp_get_attachment_image_src ($ imageid, 'full') dans votre code, si l'ID $ image que vous vérifiez n'a pas de taille 'complète', vous verrez cette erreur.

Comme suggéré ci-dessus, ce problème particulier pourrait être causé par un plugin ne vérifiant pas l'existence d'une taille d'image avant de la demander. Si vous voulez quelque chose de plus spécifique, vous pouvez lancer une recherche sur wp_get_attachment_image_src dans vos plugins et votre thème pour voir si quelque chose tente d'obtenir l'image "complète" sans vérifier son existence.

Dans mon cas, c'était du code personnalisé alors j'ai écrit ceci pour le contourner

$meta = wp_get_attachment_metadata($imageid);   
if( array_key_exists("full", $meta["sizes"]) ) {
   $imagepath = wp_get_attachment_image_src($imageid,'full')
} else {
  // Fallback to the original file name
  if( array_key_exists("file", $meta) )
     $imagepath = 'wp-content/uploads/' . $meta["file"];
}
1
Sean Morrison

J'obtenais cette erreur lorsque j'ai appris que je fournissais une URL d'image au lieu de l'ID d'image. Une erreur stupide de ma part mais ce n'était pas évident.

Vérifiez que vous transmettez un ID d’image valide à wp_get_attachment_image_src. Il n'y avait aucun signe d'erreur, mais l'URL qu'il renvoyait était en fait juste le répertoire de téléchargement de base et l'avertissement décrit ci-dessus.

Bien sûr, si ce n'est pas votre code, c'est un plugin ou un thème.

0
Radley Sustaire

Il n'y avait vraiment pas de question là-dedans, donc je ne sais pas trop quelle route vous essayez, alors voici un petit dépannage pour vous ...

Tout d’abord, avant d’examiner les résolutions, ce n’est jamais une bonne idée de laisser le débogage sur un serveur de production. Vous ne devriez pas voir ces messages d'erreur car ils ne sont pas critiques et n'arrêteraient pas l'affichage de votre site.

  1. Si vous n'exécutez pas les versions les plus récentes de WordPress et de vos plugins/thèmes, effectuez une sauvegarde du site, puis mettez-les à jour.

  2. Si cela ne fonctionne pas, j’imagine qu’un thème est à l’origine du problème. (Parce que c'est le fichier wp-includes/media.php qui renvoie l'erreur, pas un plug-in). Le moyen le plus simple de déterminer s'il s'agit de votre thème est d'activer un autre.

  3. Enfin, si vous n’êtes pas encore au courant, essayez de déplacer tous les dossiers du plug-in dans un dossier appelé .inactive (ou quelque chose du genre), visitez votre page d’accueil et voyez si elle est corrigée. Si c'est le cas, c'est le problème. Commencez à ajouter des plugins jusqu'à ce que l'erreur réapparaisse, ce sera le coupable. Vous pouvez ensuite déplacer tous les autres plugins.

Une fois le dépannage terminé, assurez-vous de changer le "vrai" dans define('WP_DEBUG', true) en "faux".

0
Eric B.