web-dev-qa-db-fra.com

'Impossible d'utiliser un objet de type stdClass comme tableau' en utilisant Wordpress

J'essaie de récupérer le slug d'une balise dans un message wordpress, il est maintenant possible d'obtenir toutes les informations sur les balises en utilisant

$tag = wp_get_post_tags($post->ID);

Plus d'informations à ce sujet sur le Wordpress Docs

En utilisant cela, vous devriez obtenir des données renvoyées comme ceci ...

Array
(
   [0] => stdClass Object
       (
           [term_id] => 4
           [name] => tag2
           [slug] => tag2
           [term_group] => 0
           [term_taxonomy_id] => 4
           [taxonomy] => post_tag
           [description] => 
           [parent] => 0
           [count] => 7
       )

   [1] => stdClass Object
       (
           [term_id] => 7
           [name] => tag5
           [slug] => tag5
           [term_group] => 0
           [term_taxonomy_id] => 7
           [taxonomy] => post_tag
           [description] => 
           [parent] => 0
           [count] => 6
       )

)

Maintenant, ce que je veux, c'est le slug pour le premier élément qui devrait être comme suit

$tag[0]['slug']

Cependant, ce faisant, je reçois cette erreur php:

Impossible d'utiliser un objet de type stdClass comme tableau

Quelqu'un peut-il me dire ce que je fais mal ici? et quel est le meilleur moyen d'obtenir les données de limaces

25
Ian

Notez que le tableau contient objets (instances de stdClass), pas d'autres tableaux. La syntaxe est donc:

$tag[0]->slug
55
rid

Une autre option devrait être de convertir explicitement $ tag [0] dans un tableau:

$t = (array)$tag[0];
$t["slug"] = ...

Je ne peux pas le faire fonctionner cependant

3
itlunch