根据某些条件将一些帖子排除在wp_Query中显示 时间:2018-01-28 作者:Javad Yousefi 我需要在某些情况下从wp\\U查询中显示一些帖子排除。我使用下面的代码来做这件事,代码工作正常,但我设置了posts_per_page 到12 根据该代码,跳过的帖子将被计数,例如,而不是12 每页的帖子都有不同的帖子编号(10,2,5,…)while( $query->have_posts() ){ $query->the_post(); if(condition) { //Show the post } } 2 个回复 SO网友:Vlad Olaru 要使分页正常工作,您需要使用pre_get_posts action.通过查看您的代码,我看不出其中涉及特定于帖子的信息。是$course_options 持有该职位的信息? SO网友:Joel M 当您使用php过滤帖子时,要使分页工作起来会很棘手。例如,当您转到第2页时,查询将有一个offset和limit参数,有效地直接从sql获取从12到24的帖子。除非sql知道必须跳过前12个选项中的哪一个,否则过滤这些选项对您没有任何好处。在大多数情况下,您会希望在$wp\\u查询中使用meta\\u查询,或者使用get\\u posts()函数(两者最终都会或多或少地使用相同的代码)。元查询可以处理很多事情,但如果您的条件太复杂,那么可能就是无法通过sql复制过滤。请让我们知道条件,我可以告诉您如何编写元查询。此外,如果您没有自己编写$wp\\u查询(例如,您的页面已经为您运行了,如archive.php),那么您需要使用pre\\u get\\u posts操作将meta\\u查询添加到$wp\\u查询中。 结束 文章导航