Wordpress - 按元数据日期排序后循环

时间:2012-11-13 20:36:01

标签: wordpress sorting

我有两个CPT,一个叫做'艺术家',另一个叫'发行'。我创建了一个单一的artist.php页面,其中显示了一位艺术家及其“自定义元数据”。在同一页面上,我将使用以下代码显示该艺术家的所有版本:

<!-- GET RELEASES -->
<?php

$category = get_the_category();
$artist_name_slug = $category[0]->slug;

$args = array ('post_type' => 'release', 'posts_per_page' => 20, 'category_name' => $artist_name_slug);

query_posts ($args);

?>

<?php if (have_posts()) : ?>
<h3 class="artist-col2-title">Releases</h3>
<?php while (have_posts()) : the_post(); ?>

<div class="artist-release"><a href="<?php echo get_permalink(); ?>" title="<?php the_title(); ?>" rel="bookmark"><?php echo the_post_thumbnail('small'); ?></a></div>

<?php endwhile; ?>
<?php endif; ?>
<div style="clear:both;"></div>

在发布CPT中,我在元数据中有一个发布日期。

我想根据该日期对版本进行排序,但我无法弄清楚如何将其添加到我的参数中。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

要按meta data排序,您可以使用

$args = array (
    'post_type' => 'release',
    'posts_per_page' => 20,
    'category_name' => $artist_name_slug,
    'meta_key' => 'your_meta_key' // i.e. release_date
    'orderby'='meta_value' // for numeric value use 'meta_value_num' instead
);
query_posts ($args);

但请注意,meta_key应出现在您要用于排序的查询中,see for more