首页 > 解决方案 > 如何按 ACF 字段查询帖子,然后按单独的 ACF 字段排序?

问题描述

我正在使用 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.

标签: phpwordpressadvanced-custom-fields

解决方案


可以为元查询分配一个名称,然后在您的 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 );

推荐阅读