Wordpress中的自定义循环分页

时间:2015-06-17 09:24:14

标签: wordpress pagination custom-post-type

我在wordpress页面中使用这个自定义循环。它工作得很好(尽管这里已经简化了)。但是,它会在一个页面上显示100个搜索结果。因为它是一个自定义循环,我正在努力使它与一些分页(理想情况下每页10)。有没有人事先做到这一点,并愿意指出我正确的方向?

非常感谢......

    <ul id="property-holder">
    <?php if ( $location_query->have_posts() ) :
    $row_counter = 0;

    while ( $location_query->have_posts() ) :
    $location_query->the_post();

    $date = get_field("availdate");
    $date = str_replace('/', '-', $date);
    $date = date('Y-m-d', strtotime($date));

    if ($date > $future) {
    $row_counter += 1;

    echo '<li id="property-item">';
    echo '<p>' . 'Test' . '</p>';
    echo '</li>';

    } 

    endwhile;

    else :

    echo 'No Results';
    endif; wp_reset_postdata(); ?>

    </ul>

    <nav>
    <?php previous_posts_link('&laquo; Previous 10 Results') ?>
    <?php next_posts_link('Next 10 Results &raquo;') ?>
    </nav>

1 个答案:

答案 0 :(得分:1)

我假设您已定义$location_query这样的$location_query = new WP_Query($args);,现在您的args添加posts_per_page => 10。这会将结果分成每页10个项目。如果您的分页未在下一页显示新项目,请按以下方式进行查询:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
    'post_type' => 'your post type',
    'posts_per_page' => 10,
    'paged' => $paged
);
$location_query = new WP_Query($args);