繁体   English   中英

如何通过分类术语/自定义字段值订购wp_query

[英]How to order wp_query by taxonomy term / custom field value

如何建立具有相关分类法顺序的WP查询,然后按帖子标题(或自定义字段)构建WP查询?

我的“ tax_x”是用于对循环进行排序的字段的分类法,而“ tax_y”对项目进行了限制,这与订单无关,并且我有一个custom_field_2用于产品中帖子的二级/子排序cpt…

$product_args = array(
        'post_type' => 'product',
        'posts_per_page'    => '-1',
            //'orderby'         => 'slug',          
            'orderby'           => 'meta_value',
            'order'             => 'ASC',
            'meta_query' => array(
                array(
                    'taxonomy'  => 'tax_x',
                    'meta_key'     => 'custom_field_1',
                    ),
            ),

            'tax_query' => array(
                array(
                    'taxonomy'  => 'tax_y',
                    'field'     => 'id',
                    'terms'     => $this_term_id
                    ),

           ) 
    );
}

如果要使用order by meta_query元素,则不应使用orderby meta_value,而可以使用orderby meta_query_array_name。

因此,让我们为tax_x meta_query数组命名,然后使用orderby该元素。 而且,如果您另外按帖子标题排序,则需要使用两个元素组成的数组作为orderby值。 这是示例:

$product_args = array(
        'post_type' => 'product',
        'posts_per_page'    => '-1',      
            'orderby'           => array ('tax_x_meta'=>'ASC','title'=>ASC),
            'meta_query' => array(
                'tax_x_meta'=>array(
                    'value'  => 'tax_x',
                    'key'     => 'custom_field_1',
                    ),
            ),

            'tax_query' => array(
                array(
                    'taxonomy'  => 'tax_y',
                    'field'     => 'id',
                    'terms'     => $this_term_id
                    ),

           ) 
    );
}

当然,尚不清楚“值” =>“ tax_x”部分,我不了解meta_query内部的分类法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM