WordPress分页链接未显示自定义帖子类型查询

时间:2016-05-23 03:44:30

标签: php wordpress pagination

我正在尝试对自定义帖子类型列表进行分页。这个列表显示没问题,但我似乎无法将分页链接显示出来。

以下是代码:

<?php
        $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

        $args = array(
            'post_type' => 'families',
            'posts_per_page' => 9,
            'paged'=>$paged
        );

        $the_query = new WP_Query( $args );

    ?>

    <table class="families">

        <tr>
            <th class="family_head">Family Head</th>
            <th class="address">Address</th>
            <th class="contact_number">Contact number</th>
        </tr>

        <?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>

        <tr>

            <td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>

            <td><?php the_field( 'residence_address' ); ?></td>

            <td class="contact_number"><?php the_field( 'mobile_number_1' ); ?></td>

        </tr>

        <?php endwhile; ?>

        <div class="navigation">
            <div class="alignleft"><?php previous_posts_link('&laquo; Previous') ?></div>
            <div class="alignright"><?php next_posts_link('More &raquo;') ?></div>
        </div>

        <?php else: ?>

        <?php endif; ?>

    </table>

用于分页的其他类似WP功能也不起作用。我做错了什么?

2 个答案:

答案 0 :(得分:0)

我认为这是 get_query_var(&#39;分页&#39;)的问题,如果您使用此代码,请检查 $ paged , 尝试替换此

$paged = (get_query_var('page')) ? get_query_var('page') : 1;

页面与分页之间存在差异。 您可以阅读更多HERE

希望,这会有所帮助。你可以问我是否可以帮助你。谢谢

答案 1 :(得分:0)

我删除了所有分页代码并重新执行了。它现在有效。看看你是否能找到变化。

这是工作代码 -

<div id="main_content">

<div id="main_content_otherpages">

    <?php

        $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;

        $args = array(
            'post_type' => 'families',
            'posts_per_page' => 20,
            'paged' => $paged
        );

        $the_query = new WP_Query( $args );

    ?>

    <table class="families">

        <tr>
            <th class="family_head">Family Head</th>
            <th class="address">Address</th>
            <th class="contact_number">Contact number</th>
        </tr>

        <?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>

        <tr>

            <td><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td>  

            <td><?php the_field( 'residence_address' ); ?></td>

            <td class="contact_number"><?php the_field( 'mobile_number_1' ); ?></td>

        </tr>

        <?php endwhile; ?>

    </table>

    <div style="clear:none; float:left"><?php next_posts_link( '&larr;Previous', $the_query->max_num_pages ); ?></div>
    <div style="clear:none; float:right"><?php previous_posts_link( 'Next&rarr;' ); ?></div>

    <?php wp_reset_postdata(); ?>

    <?php else: ?>

    <?php endif; ?>

</div>