在WordPress中,要根据文章的自定义字段进行多重排序,您可以使用WP_Query
来构建自定义的查询参数。以下是一个示例,演示如何按多个自定义字段排序文章:
$args = array(
'post_type' => 'post', // 您可以更改为自定义文章类型
'meta_query' => array(
'relation' => 'AND', // 'AND' 表示要满足所有条件,您也可以尝试 'OR'
array(
'key' => 'custom_field_1', // 第一个自定义字段的键
'compare' => 'EXISTS', // 只选择包含这个字段的文章
),
array(
'key' => 'custom_field_2', // 第二个自定义字段的键
'compare' => 'EXISTS', // 只选择包含这个字段的文章
),
),
'orderby' => array(
'custom_field_1' => 'ASC', // 第一个自定义字段按升序排列
'custom_field_2' => 'DESC', // 第二个自定义字段按降序排列
),
);
$query = new WP_Query($args);
if ($query>have_posts()) :
while ($query>have_posts()) : $query>the_post();
// 在这里输出文章的内容
the_title();
// 其他文章信息
endwhile;
wp_reset_postdata();
else :
// 没有匹配的文章
endif;
在上述示例中,我们首先定义了一个$args
数组,其中包含了meta_query
来指定自定义字段的条件。在orderby
中,我们定义了要根据哪些字段进行排序以及排序的方向('ASC'表示升序,'DESC'表示降序)。
请确保将示例中的自定义字段键(custom_field_1
和custom_field_2
)替换为您实际使用的自定义字段的键,并根据需要调整其他参数,以满足您的特定需求。