如何在 WordPress 中使用排除或元键检索文章?
2024-03-05 15:39:26
通过排除或元键检索 WordPress 文章
前言
在 WordPress 中获取特定文章可以让你定制网站内容和展示,满足特定需求。本文将指导你如何使用 post__not_in
和 meta_query
参数从 WordPress 中获取不在特定数组内或带有特定元键的文章。
1. 排除特定文章
使用 post__not_in
参数
要排除特定文章,你可以使用 post__not_in
参数。它接受一个包含要排除的文章 ID 的数组作为参数。示例代码:
$array = [1, 2, 3];
$args = [
'post__not_in' => $array,
'post_type' => 'post',
'order' => 'DESC',
];
$query = new WP_Query($args);
2. 查找特定元键的文章
使用 meta_query
参数
要查找具有特定元键的文章,可以使用 meta_query
参数。它接受一个包含元查询数组的参数,指定要查询的元键和值。示例代码:
$args = [
'meta_query' => [
[
'key' => 'my_meta_key',
'value' => 'my_meta_value',
'compare' => '=',
],
],
'post_type' => 'post',
'order' => 'DESC',
];
$query = new WP_Query($args);
3. 结合查询
使用 meta_query
和 post__not_in
为了同时使用这两个查询,你可以将它们结合在 meta_query
数组中,使用 relation
参数指定它们之间的关系(例如 AND
或 OR
)。示例代码:
$array = [1, 2, 3];
$args = [
'meta_query' => [
'relation' => 'AND',
[
'key' => 'my_meta_key',
'value' => 'my_meta_value',
'compare' => '=',
],
],
'post__not_in' => $array,
'post_type' => 'post',
'order' => 'DESC',
];
$query = new WP_Query($args);
结论
通过掌握 post__not_in
和 meta_query
参数,你可以灵活地检索符合特定条件的 WordPress 文章。这些查询对于定制网站内容、增强搜索功能以及根据元数据筛选内容至关重要。
常见问题解答
-
如何排除多个特定文章?
使用post__not_in
参数,将要排除的文章 ID 放在一个数组中。 -
如何查找具有特定元值的任何文章?
在meta_query
中使用key
和value
参数,将compare
设置为=
. -
如何结合多个元查询条件?
在meta_query
数组中使用relation
参数,将其设置为AND
或OR
。 -
如何按照元值对文章排序?
在meta_query
中使用orderby
和order
参数。 -
如何获得特定元键下的所有文章?
在meta_query
中仅使用key
参数,不指定value
或compare
.