Salut,
une question très bête. j'utilise pour mon site web le framework de Grafikart. La vidéo parle des metabox mais pas comment les utiliser dans le code ensuite(juste que l'on sait que l'on doit utiliser get_post_meta). En gros je veux créer un champ dans mon portfolio url du projet. Ok je l'ai fait, j'enregistre (bizarrement la page est blanche ensuite....). Je reviens en arrière pour être sur et c'est bien enregistré.

Mais dans mon code, pour appeler la valeur de ce metabox, je n'arrive pas à traiter le Array (ou alors j'ai tellement la tête dans le guidon que je vois pas mon erreur)

Le code dans mon portfolio.php :

<?php
    new metas(
        array(
            'id' => 'portfolio',
            'title' => 'Information du projet',
            'page' => 'portfolio',
            'context' => 'normal',
            'priority' => 'high',
        ),
        array(
            array(
                "name" => 'URL du projet :',
        "id" => "urlprojet",
        "default" => "http://",
        "type" => "text"
            )
        )
    );
?>

Je veux récupérer l'url du projet mais je n'y arrive pas. Pour voir mon Array, j'ai fais un print_f sur mon $post->ID :

<?PHP print_r(get_post_meta($post->ID)); ?>

Et le résultat :

Array ( [_edit_lock] => Array ( [0] => 1303475694:1 ) [_edit_last] => Array ( [0] => 1 ) [_thumbnail_id] => Array ( [0] => 34 ) [_price] => Array ( [0] => http://www.tef-site.fr ) [urlprojet] => Array ( [0] => http://www.tef-site.fr ) )

Merci par avance pour votre aide car là je vois plus comment utiliser get_post_meta()...

A+
Tef
P.S : Même Bonobo ou Fink ne m'aide pas à trouver la réponse lol

3 réponses


Grafikart
Réponse acceptée

get_post_meta($post-ID,'urlprojet') devrait mieux fonctionner.

Tef
Auteur

Salut Graf,
Merci pour ta réponse.
Malheureusement je l'avais testé mais cela me retourne Array et non ma valeur de urlprojet :(

Tef
Auteur

Raaaah punaise désolé j'ai la réponse sous les yeux depuis tout à l'heure...
Donc j'avais bien fait ce que tu m'as indiqué. Par contre en mettant dans une variable et en faisant ensuite echo $maVariable[0] ça marche.
Par contre si j'ai plusieurs champs texte, je dois tous les traiter avant dans des variables différentes ?

Merci :)