按字母顺序获取自定义字段值
问题描述:
下面的函数按照发布顺序列出自定义字段的值。例如:按字母顺序获取自定义字段值
- 弗兰克·卡普拉
- 希区柯克
- 伍迪·艾伦
- 伍迪·艾伦
- 弗兰克·卡普拉
- 阿莫多瓦
我想获得这个名单中字母顺序和不重复,链接到每个项目<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
}
}
完美@soju。您只能列出名称以字母“a”开头的董事吗? –
答复已更新。 – soju
大@soju。非常感谢你。您可以按出现次数对列表进行排序? –