如何在循环中列出自定义字段和每个结果的自定义分类?

时间:2012-03-08 作者:Dave

如何在下面的循环中列出每个结果的自定义字段和自定义分类法?

<?php
$temp = $wp_query;
$wp_query= null;
$wp_query = new WP_Query();
$wp_query->query(\'post_type=customtype&showposts=10\'.\'&paged=\'.$paged);
while ($wp_query->have_posts()) : $wp_query->the_post();

the_title(); // <- works
//list custom field here
//list custom taxonomy here

endwhile;

wp_pagenavi();              
?>

1 个回复
最合适的回答,由SO网友:chrisguitarguy 整理而成

可以使用获取自定义字段值get_post_meta. 就像这样。。。

<?php
$wp_query = new WP_Query();
$wp_query->query(\'post_type=customtype&showposts=10\'.\'&paged=\'.$paged);
while ($wp_query->have_posts()) : $wp_query->the_post();

the_title(); // <- works
if( $some_meta = get_post_meta( get_the_ID(), \'the_meta_key_you_want\', true )
{
    // you could put other formatting here.
    echo $some_meta; 
}

endwhile;
你需要改变the_meta_key_you_want 在呼叫中get_post_meta, 当然

对于自定义分类法,您需要使用get_the_termsthe_terms. the_terms 有点像the_tagsthe_category, 它会为您输出HTML。get_the_terms 将只返回术语对象的数组(列表)。

下面是一个例子get_the_terms. 它的Codex条目也有一些很好的例子。你必须改变your_taxonomy, 当然

<?php
$wp_query = new WP_Query();
$wp_query->query(\'post_type=customtype&showposts=10\'.\'&paged=\'.$paged);
while ($wp_query->have_posts()) : $wp_query->the_post();

the_title(); // <- works
$terms = get_the_terms( get_the_ID(), \'your_taxonomy\' );
if( $terms && ! is_wp_error( $terms ) )
{
    foreach( $terms as $t )
    {
        echo \'<a href="\' . get_term_link( $t->slug, \'your_taxonomy\' ) . \'">\' . esc_html( $t->name ) . \'</a>\';
    }
}

endwhile;

结束

相关推荐

WordPress“the loop”中需要的简单Foreach循环帮助

我需要“循环”中的foreach循环This is my current code (index.php) :<?php if (have_posts()) : while (have_posts()) : the_post(); ?> <div><a href=\"<?php the_permalink(); ?>\" title=\"<?php get_the_title(); ?>\"> <?php the_title()