gpt4 book ai didi

php - 列出多个 $query->set 的正确方法

转载 作者:可可西里 更新时间:2023-10-31 23:04:56 24 4
gpt4 key购买 nike

列出多个 $query->set 的正确方法是什么?我可以有多个 $query->set 像下面的“CODE A”吗?
还是我应该将它们合二为一?如果是,您将如何组合三个 $query->set 代码?我尝试在下面的“CODE B”中组合它们,但没有成功。

.
代码 A:合并之前 $query->set

这段代码在 functions.php 中

function featured_category( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( 'category_name', 'new' );
$query->set( 'cat', '-60, -61' );
$query->set( 'posts_per_page', 5 );
}
}
add_action( 'pre_get_posts', 'featured_category' );

.
代码 B:合并 $query->set

这段代码在 functions.php 中

function featured_category( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( array( 'category_name' => 'new', 'cat' => '-60, -61', 'posts_per_page' => 5) );
}
}
add_action( 'pre_get_posts', 'featured_category' );

最佳答案

使用 set 方法(它是 WP_Query 类的一部分)的正确方法是传递 2 个参数 - 查询参数键和查询参数值。所以你的第一个例子(CODE A)是正确的方法。

您可以在这里查看方法代码:https://core.trac.wordpress.org/browser/tags/4.0/src/wp-includes/query.php#L2328

附言如果要从查询中排除多个类别,请考虑使用 category__not_in 查询参数,例如:

$query->set( 'category__not_in', array(60, 61) );

有关类别查询参数的更多信息,请查看http://codex.wordpress.org/Class_Reference/WP_Query#Category_Parameters

关于php - 列出多个 $query->set 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26453908/

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