显示一个元键的结果并按不同的元键排序

Display results of one meta key and order by a different meta key

在二手车经销网站上,我有一个 PHP 查询显示相关车型的所有结果。因此,如果您访问 "Honda Civic" 页面,它将显示列为 Civic 的所有车辆。

目前,我正在使用以下查询:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$args = array(
  'post_type' => array('vehicle'), 
  'post_status' => 'publish', 
  'orderby' => 'date',
  'order' => 'ASC',  
  'posts_per_page' => 10, 
  'paged' => $paged,
  'meta_key' => 'model',
  'meta_value' => $model,
);

这按预期工作,但我想对结果进行排序,以便它首先显示二手车,然后显示演示车。所以我需要通过 "Demo" 元键对结果进行排序,同时仍然只显示相关模型。

我已经根据另一个 Whosebug 问题的答案厌倦了下面的查询,但是 returns 没有结果:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$args = array(
  'post_type' => array('vehicle'),
  'post_status' => 'publish',   
  'meta_key' => 'Demo', 
  'orderby' => 'meta_value',
  'order' => 'ASC',
  'posts_per_page' => 10,
  'paged' => $paged,
  'meta_query' => array(
  array('key' => 'model', 'value' => '$model')
  )
);

如有任何帮助,我们将不胜感激。

提前致谢
威廉

使用下面的查询参数作为元键和值。

<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$args = array(
  'post_type' => array('vehicle'),
  'post_status' => 'publish',   
  'posts_per_page' => 10,
  'paged' => $paged,
  'meta_query' => array(
                        'relation' => 'AND',
                        array(
                                'key' => 'model',
                                'value' => $model,
                                'compare' => '='
                        ),
                    ),
    'meta_key' => 'Demo',
    'orderby' => 'meta_value', //meta_value_num or meta_value
    'order' => 'ASC'

);
?>