对于查询,我将查看how WordPress currently includes sticky posts in the loop. 它执行常规查询,然后在单独的查询中获取粘性帖子。如果常规查询中存在任何粘性帖子,则会将其取出并放在顶部。剩下的粘帖也放在顶部。
你应该做的是查询最新的帖子,但忽略粘性帖子。然后,您可以查询不到一个月的贴子,按发布日期排序,限制为3。如果这导致了任何帖子,你也可以通过你的常规帖子删除任何已经是你的粘性帖子之一的帖子。
您可以通过设置caller_get_posts
选项(或ignore_sticky_posts
, 如WP 3.1所述。第一个选项是在添加粘性帖子时添加的,以指示查询来自get_posts()
, 因此应该忽略粘性帖子)。要获取粘性帖子,请从中读取帖子IDget_option( \'sticky_posts\' )
.