2009-10-21 6 views
2

J'essaie de renvoyer la clé d'un champ personnalisé (valeur, telle qu'un ensemble d'URL lors de la modification d'un article) dans le document. Voici le code général:Retour des valeurs de champ personnalisées Wordpress

 <div id="feature" class="clearfix"> 

        <?php 
         $feature_post = get_posts('category=3&numberposts=1'); 
         foreach($feature_post as $post) : 
        ?> 
         <div class="feature_post" style='<?php echo get_post_meta($post->ID, 'feature', true); ?>'> 
          <h2><?php the_title(); ?></h2> 
         </div> 
        <?php 
         endforeach; 
        ?> 

      </div> 

Plus précisément, c'est la ligne de code:

<?php echo get_post_meta($post->ID, 'feature', true); ?> 

qui n'imprime rien - des idées?

Le champ personnalisé sur le poste est déjà 'fonctionnalité', il n'y a pas de problèmes CSS ou Javascript, il ne renvoie pas les valeurs.

+1

Si vous obtenez à l'écho que la post-$> ID ne que tout retour. La syntaxe est correcte. Stupide Question, mais vous voulez que le contenu de la fonctionnalité soit dans la section Stlye? Avez-vous regardé la source derrière la page? – Littlejon

Répondre

2

S'il vous plaît ajouter global $post; avant d'appeler get_posts() fonction et ne pas utiliser $ post nommer dans foreach() boucle, puis voir si cela fonctionne ou non! En cas d'échec il suffit d'utiliser ce code à la place:

<?php 
    $loop = new WP_Query('cat=3&showposts=1'); 
    if($loop->have_posts()): 
     while($loop->have_posts()): $loop->the_post(); 
?> 
      <div class="feature_post" style="<?php echo get_post_meta($post->ID, 'feature', true); ?>"> 
       <h2><?php the_title(); ?></h2> 
      </div> 
<?php 
     endwhile; 
    endif; 
?> 
0

Je ne sais pas que category=3 œuvres, mais utilisez cat=3 dans votre déclaration get_posts. Vous avez également besoin de setup_postdata($post); après votre instruction foreach.

solution de Sepehr Lajevardi devrait également fonctionner bien;)

Questions connexes