gpt4 book ai didi

php - Wordpress meta_query 不适用于 'orderby' - 高级自定义字段

转载 作者:行者123 更新时间:2023-11-30 23:48:29 25 4
gpt4 key购买 nike

我正在尝试查询自定义帖子类型“部分”,其中“section.section_parent_page = {无论当前 $post 的 ID 是什么}”。

查询的这一部分工作正常并且是这样完成的:

$args = array(
'post_type' => 'section',
'meta_query' => array(
array(
'key' => 'section_parent_page', // name of custom relate field
'value' => '"' . get_the_ID() . '"',
'compare' => 'LIKE'
)
)
);

但是一旦我尝试对自定义字段“section_position”进行“排序”,我要么中断查询,要么看不到正确的排序。这是我目前拥有的:

$args = array(
'post_type' => 'section',
'meta_key' => 'section_position', // custom field I want to order by
'orderby' => 'meta_value',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => 'section_parent_page', // name of custom relate field
'value' => '"' . get_the_ID() . '"',
'compare' => 'LIKE'
)
)
);

当我查看 $the_query-> 请求时,看起来它继续按 wp_posts.menu_order 排序

如何使用多个 meta_query 数组来完成此操作?

编辑:无论我尝试什么,我的查询字符串的结尾看起来像这样:

ORDER BY wp_posts.menu_order ASC LIMIT 0, 10

最佳答案

如果 section_position 具有整数 ( number ) 值,请使用以下代码

$args = array('post_type' => 'section',
'orderby' => 'meta_value_num',
'meta_key' => 'section_position',
'order'=>'ASC',
'meta_query' => array(
array(
'key' => 'section_parent_page', // name of custom relate field
'value' => '"' . get_the_ID() . '"',
'compare' => 'LIKE'
)
)
);

注意我使用了“meta_value_num”而不是“meta_value”

关于php - Wordpress meta_query 不适用于 'orderby' - 高级自定义字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25213208/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com