如何通过ACF字段查询帖子,然后又通过单独的ACF字段排序?

时间:2019-09-27 17:22:39

标签: php wordpress advanced-custom-fields

我正在使用WP_Query来获取ACF字段之一中具有特定值的帖子。我还需要通过单独的ACF字段对它们进行排序。我不确定如何做到这一点。我读过的所有内容都说要使用'orderby' => 'meta_value',但是我认为那是我过滤帖子所依据的字段的值,这不是我想要的。

这就是我现在所拥有的。.

$args = array( 
    'post_type' => 'contacts',
    'posts_per_page' => -1,
    'meta_key' => 'department',
    'meta_value' => 'Transportation',
    'orderby' => 'meta_value'
); 
$the_query = new WP_Query( $args );

我需要orderby一个名为last_name的ACF字段。

1 个答案:

答案 0 :(得分:1)

可以为元查询分配一个名称,然后在orderby中引用该名称。像这样的东西。

$args = array (
    'post_type'              => 'contacts',
    'post_status'            => 'publish',
    'nopaging'               => true,
    'posts_per_page'         => -1,
    'meta_query' => array( 'main_query' => array(
            'key' => 'department',
            'value' => 'Transportation'
        ), 'orderby_query' => array(
            'key' => 'last_name',
        )
    ),
    'orderby' => array(
        'orderby_query' => 'ASC',
    ),
);
$the_query = new WP_Query( $args );