当post__in
使用参数。如果您阅读docs, 你会发现你应该\'ignore_sticky_posts\' => 1
消除被查询的粘性帖子
编辑查询参数应如下所示
$recommended_args = array(
\'post_type\' => \'post\',
\'posts_per_page\' => 3,
\'post__in\' => get_option(\'sticky_posts\'),
\'orderby\' => \'date\',
\'ignore_sticky_posts\' => 1
);
默认情况下,编辑2,
WP_Query
(无论这是主查询还是自定义查询)搜索并返回第一页顶部的所有粘性帖子。忽略所有其他查询参数,特别是
posts_per_page
. 如果你有100个胶粘物
posts_per_page
设置为
3
, 将返回所有100条粘性帖子,无论是否有3条帖子不在粘性帖子数组中
然后从查询中的原始位置删除这些粘性帖子,以避免重复。当你经过时get_option( \'sticky_posts\' )
到post__in
, 这些粘性帖子只需从查询中删除,如下所示WP_Query
已将其作为粘贴帖子返回,这是为了避免它们显示为重复。
要使查询工作正常,请have to “关闭”粘滞贴子功能,以便WP_Query
可以排除它们,只关注手头的查询。为此,您需要设置ignore_sticky_posts
参数至1
这意味着粘性帖子将被忽略
我希望这现在有意义