下面的函数按照发布顺序列出自定义字段的值。例:
我想按字母顺序排列这个列表而不重复,每个项目的链接都是<a href="Woody-Allen">Woody Allen</a>
。例:
这是代码:
<?php
$movie_reviews = get_posts( 'numberposts=-1&orderby=post_name' );
foreach( $movie_reviews as $post ) : setup_postdata( $post );
?>
<span>
<?php $director = get_post_meta( $post->ID, "director", $single = true );
if( $director !== '' ) {
echo $director;
} ?>
</span>
<?php endforeach; ?>
这可能吗?
使用get_posts
,您可以使用meta_value
订购帖子,如下所示:
$movie_reviews = get_posts(array(
'numberposts'=>-1,
'order'=>'ASC',
'orderby'=>'meta_value',
'meta_key'=>'director'
));
要删除重复项,您可以构建一个导演数组:
$directors = array();
foreach( $movie_reviews as $post ) {
$director = get_post_meta( $post->ID, 'director', true );
}
$directors = array_unique($directors);
然后,您可以根据需要显示它们:
foreach ($directors as $director) {
// display what you want
}
编辑:仅显示*导演:
foreach ($directors as $director) {
if (strtolower($director[0])=='a') {
// display what you want
}
}