1

我正在尝试以自定义帖子类型获取最新帖子:

$query = new WP_Query(array(
    'post_type'         => 'some_custom_post_type',
    'posts_per_page'    => 1,
    'orderby'           => 'date',
    'order'             => 'DESC'
));

出于某种奇怪的原因,这会返回 50 个帖子。我echo从 编辑了 SQL $query->request,我可以看到LIMIT设置为 50:

SELECT SQL_CALC_FOUND_ROWS wp_posts.ID
FROM wp_posts
WHERE 1=1
    AND wp_posts.post_type = 'some_custom_post_type'
    AND (
        wp_posts.post_status = 'publish'
        OR wp_posts.post_status = 'private'
    )
ORDER BY wp_posts.post_date DESC
LIMIT 0, 50

切换post_limits而不是posts_per_page产生相同的奇怪结果。


为什么会发生这种情况,我该如何解决?

4

1 回答 1

0

尝试

$query = new WP_Query(array(
    'post_type'         => 'some_custom_post_type',
    'posts_per_page'    => 1,
    'showposts'         => 1,
    'orderby'           => 'date',
    'order'             => 'DESC'
));
于 2013-03-13T07:08:56.970 回答