Wordpress按自定义字段值对自定义分类分类帖子进行排序

时间:2019-03-22 14:03:46

标签: wordpress while-loop custom-taxonomy

我有一个自定义分类页面,用于查询归因于该分类的自定义帖子类型,在我的情况下,自定义帖子类型为“汽车”,示例分类页面为“特殊汽车”或“敞篷车”。

在分类页面“ taxonomy-luxury-cars.php”上,我需要显示按自定义字段“ display_order”排序的帖子,但是我无法使这些帖子以正确的顺序显示。

基本上,我所需要做的就是在“同时拥有帖子”循环之前插入“ by display_order”(自定义字段)order,以对帖子重新排序。

我尝试了许多在线发现的代码段,但是都无法正常工作。

片段1 (仅列出“汽车”的所有帖子,但我仅需要用于当前分类法的帖子)

   $terms = get_the_terms( get_the_ID(), 'luxury-cars' );
    foreach($terms as $term) {
        $posts = get_posts(array(
                'post_type' => 'cars',
                'tax_query' => array(
                    array(
                        'meta_key'  => 'display_order',
                        'orderby'   => 'meta_value_num',
                        'order'     => 'ASC'
                    )
                ),
                'numberposts' => -1
            ));
        foreach($posts as $post) {
            echo get_the_title();
        }
    }

摘要2

$queried_object = get_queried_object();
$args = array(
        'post_type'     => 'cars',
        'term'          => $queried_object->slug,
        'orderby'       => 'meta_value_num',
        'order'         => 'ASC',
        'meta_key'      => 'display_order',
        'meta_query'    => array(
            array(
                'key'       => 'display_order'
            )
        ),
        'tax_query'     => array(
            array(
                'taxonomy'  => 'luxury-cars',
                'terms'     => array(
                    $queried_object->term_id
                )
            )
        )
    );
$query = new WP_Query($args);

while ( have_posts() ) : the_post();

...

摘要3

{{1}}

0 个答案:

没有答案