我已经编写了一个wp查询来列出基于2个键的custompost类型(motobikes)。 (变量和类型的品牌) 查询工作并正确列出我的customposts,但我想根据一个3键值(即'key => cylindree')对它们进行排序 我找不到按查询中不存在的特定自定义字段值排序的方法。 这是我到目前为止的查询:
$args = array(
'post_type' => 'motos',
'posts_per_page'=> -1,
'meta_query' => array(
array(
'key' => 'categorie',
'value' => 'Roadster'
),
array(
'key' => 'marque',
'value' => $meta_value
)
)
);
[...]
感谢您的帮助。
最好的问候。
答案 0 :(得分:2)
您可以按以下顺序添加meta_key
:
$args = array(
'post_type' => 'motos',
'posts_per_page'=> -1,
'meta_key' => 'cylindree',
'orderby' => 'meta_value',
'meta_query' => array(
array(
'key' => 'categorie',
'value' => 'Roadster'
),
array(
'key' => 'marque',
'value' => $meta_value
)
)
);
答案 1 :(得分:0)
试试这个,它对我有用:
global $wpdb;
$query = "
SELECT
wp_posts.ID, pm1.meta_value AS your_custom_field
FROM
wp_posts
LEFT JOIN
wp_postmeta AS pm1 ON (wp_posts.ID = pm1.post_id AND pm1.meta_key = 'name_of_custom_field_in_database')
WHERE
wp_posts.post_type = 'your_post_type' AND
wp_posts.post_status = 'publish'
ORDER BY your_custom_field
";
$posts = $wpdb->get_results($query);