我有一个非常棘手的功能要实现,但无法通过搜索找到方法
请看下面的详细信息
我有一个名为“住宿”的自定义帖子类型,对于这个帖子类型,有 2 个自定义字段,一个是“max_sleep_1”,另一个是“max_sleep_2”
现在的问题是对于这种帖子类型下的一些帖子,设置了“max_sleep_1”,而其他帖子设置了“max_sleep_2”,但我需要按最大睡眠数(这两个字段之间的最大值)对所有帖子进行排序
例如
post1 将“max_sleep_1”设置为 1,“max_sleep_2”设置为 0
post2 将“max_sleep_2”设置为 2,“max_sleep_1”设置为 0
post3 将“max_sleep_1”设置为 3,“max_sleep_2”设置为 0
所以post的最终顺序应该是post1->post2->post3,所以你可以看到问题,我是按2个字段排序,当“max_sleep_1”设置为0时,我需要使用“max_sleep_2”来排序
希望你能明白我在说什么
我一直在搜索但找不到合适的解决方案,我也尝试在获得 WP_query 的结果后合并这两个字段,但目前还不可能
现在我只能使用元键按一个字段排序,结果是 post1->post3->post2,如下所示
$args = array(
'post_type' => 'accommodation',
'paged' => get_query_var('paged'),
'post_parent' => $parent,
'meta_key' => 'max_sleep_1',
'orderby' => 'meta_value_num',
'order' => 'ASC'
);
$the_query = new WP_Query( $args );
如果有人可以帮助我,我将非常感激