因为缺少关于post_limits
, 很难了解更多关于此函数以及何时使用它的信息。以前从未使用过或见过它被使用过,所以它可能不会被使用?
function wpcodex_filter_home_post_limits( $limit, $query ) {
if ( ! is_admin() && $query->is_main_query() && $query->is_home() ) {
return \'LIMIT 0, 25\';
}
return $limit;
}
add_filter( \'post_limits\', \'wpcodex_filter_home_post_limits\', 10, 2 );
根据我的测试,post\\u limits与使用pre\\u get\\u posts的作用相同
如果我想有条件地返回5篇文章而不分页其余的文章,我会使用post\\u limits还是pre\\u get\\u posts?
SO网友:birgire
请注意,这里您覆盖了主查询的分页,使用posts_limits
使用硬编码值筛选:
\'LIMIT 0, 25\'
在哪里
0
是偏移量和
25
要显示的帖子数。
所以在这种情况下,我会使用pre_get_posts
具有
$query->set( \'posts_per_page\', 25 );
我们不必担心寻呼问题。
如果我想有条件地返回5篇文章而不分页其余的文章,我会使用post\\u limits还是pre\\u get\\u posts?
如果我们后来决定分页是必要的,那么我们将需要修改您的posts_limits
密码这个pre_get_posts
过滤器将按原样工作,因此我们可以说它至少是一种更“经得起未来考验”的方法。
另一件事:如果你使用get_posts()
或WP_Query()
使用抑制的过滤器,然后posts_limits
当pre_get_posts
挂钩可以接近。