1

カスタム投稿タイプで最新の投稿を取得しようとしています:

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

奇妙な理由で、これは 50 件の投稿を返します。から SQLをecho編集したところ、が 50 に設定され$query->requestていることがわかります。LIMIT

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 に答える