Tre persone hanno già provato a risolvere questo problema e stiamo arrivando a zero. Voglio mostrare solo i post che hanno un valore nel meta_key "optional_image".
Quindi ... se "optional_image" non è vuoto, mostra il post. Ecco il codice:
<ul>
<?php
$args = array(
'showposts' => 5,
'meta_query' => array(
array(
'key' => 'featured_image',
'value' => '',
'compare' => '!='
)
)
);
$ft_pagination = new WP_Query( $args );
?>
<?php while ($ft_pagination->have_posts()) : $ft_pagination->the_post(); ?>
<?php $ftimage = get_post_meta(get_the_id(), 'featured_image', TRUE); ?>
<li>
<article>
<a href="">
<?php if ($ftimage): ?>
<img src="<?php bloginfo('template_directory'); ?>/timthumb.php?src=<?php echo $ftimage; ?>&w=84&h=60" alt="" />
<?php else: ?>
<img src="<?php bloginfo('template_directory'); ?>/timthumb.php?src=/wp-content/themes/ssv/images/review-default.gif&w=84&h=60" alt="" />
<?php endif; ?>
</a>
</article>
</li>
<?php
endwhile;
wp_reset_query();
?>
</ul>
Abbiamo provato letteralmente ogni combinazione a cui possiamo pensare, le opzioni deprecate meta_ *, query_posts, get_posts, invece di WP_Query ... Niente. Stampata l'istruzione select, non viene visualizzato alcun campo meta-valore. Esiste - per i post (per ogni post) ed esiste nel db.
Abbiamo visto tutti i post sull'argomento in questo momento, compresi questi:
query_posts e mostra i risultati solo se un campo personalizzato non è vuoto
http://scribu.net/wordpress/advanced-metadata-queries.html
Zilch. Per favore aiuto...