我需要通过两个元字段来命令WP_Query:元顺序和元名字。首先按数字顺序排序,如果为空,则按元名称ASC排序。我怎么做,文档不是很清楚。我试过了,但它不起作用。
for line in all_lines:
if line.startswith("company Name:"):
name = companies_re.search(line)
if name:
...
break
答案 0 :(得分:0)
您需要使用pre_get_posts
操作才能实现此目的。
请参阅https://wordpress.stackexchange.com/q/169999关于如何操作的答案。
答案 1 :(得分:0)
这对我有用:
array(
'post_type' => 'student',
'meta_query' => array(
'relation' => 'OR',
'custom_order_clause' => array(
'key' => 'meta-custom-order',
'compare' => 'LIKE',
),
'last_name_clause' => array(
key' => 'meta-last-name',
'compare' => '=',
),
),
'orderby' => array(
'custom_order_clause' => 'ASC',
'last_name_clause' => 'ASC'
),
)
CAVEAT: 确保从DB中删除空的元值,否则这将无效。