wordpress wp_query每页默认发布

时间:2012-07-13 15:46:46

标签: wordpress wordpress-theming

以下是代码:

<?php if ( have_posts() ) : ?>

                <?php
                    $temp = $wp_query;
                    $wp_query= null;
                    $wp_query = new WP_Query();
                    $wp_query->query('showposts=5'.'&paged='.$paged);
                    while ($wp_query->have_posts()) : $wp_query- >the_post();
                ?>

                    <?php get_template_part( 'content', get_post_format() ); ?>

                <?php endwhile; ?>

                <?php higher_content_nav( 'nav-below' ); ?>


        <?php $wp_query = null; $wp_query = $temp;?>

        <?php endif; ?>

如何显示每页的帖子不是5但是默认?我的意思是帖子,我们可以在阅读设置的后端设置,博客页面最多显示 - 帖子数量。

4 个答案:

答案 0 :(得分:2)

<?php query_posts( 'posts_per_page=5' ); ?>

<?php if ( have_posts() ) : ?>
    <?php while ( have_posts() ) : the_post(); ?>
        <?php get_template_part( 'content', get_post_format() ); ?>
    <?php endwhile; ?>
<?php endif; ?>

答案 1 :(得分:1)

最安全的方法是调用get_option,它直接从数据库中获取值:

$showposts = get_option('posts_per_page');
$wp_query->query('showposts='.$showposts.'&paged='.$paged);

不保证设置$numposts等全局变量。

为了将来参考,您通常可以通过在WP管理中找到设置get_option的{​​{1}}属性来确定传递给name的内容。

答案 2 :(得分:0)

您使用的是WP_Query(),但每页的帖子数没有任何默认值。

但是,您应注意代码中的showposts已替换为posts_per_page

$wp_query->query('showposts=5'.'&paged='.$paged);

答案 3 :(得分:0)

以下是解决方案:

global $numposts;
$wp_query->query( 'showposts='.$numposts.'&paged='.$paged );