为了账号安全,请及时绑定邮箱和手机立即绑定

在产品帖子上添加分页号码

在产品帖子上添加分页号码

PHP
大话西游666 2021-06-14 12:29:23
所以这是网站.. https://chicafriqfashion.com/和像https://chicafriqfashion.com/fabrics/这样的页面之一在页面上有产品。我能够在底部添加分页,但它只是上一页和下一页。我需要它来显示页码。请帮忙。这是开始<?php        $args = array( 'post_type' => 'product', 'stock' => 1, 'product_cat' => 'earrings-ring', 'posts_per_page' => '12','order' => 'DESC', 'paged' => $paged );        $loop = new WP_Query( $args );        while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>这是我的分页代码<h3>Pages:  <?php previous_posts_link( '&laquo; PREV', $loop->max_num_pages) ?>            <?php next_posts_link( 'NEXT &raquo;', $loop->max_num_pages) ?> </h3></div><?php wp_reset_postdata(); ?>
查看完整描述

2 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

解决方案-1(存档页面)

首先获取要传入 Wp_Query 参数的当前页面。


        // current page

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


        // prepare arguments

        $args = array( 'post_type' => 'product',

       'stock' => 1,

       'product_cat' => 'earrings-ring',

       'posts_per_page' => '12',

       'order' => 'DESC',

       'paged' => $paged 

       );


        //prepare query

        new WP_Query( $args ); 

您应该在 wp_reset_postdata() 之前调用 WordPress 分页函数


            the_posts_pagination( array(

                'prev_text'          => '<span class="fa fa-angle-left" aria-hidden="true"></span>',

                'next_text'          => '<span class="fa fa-angle-right" aria-hidden="true"></span>',

                'screen_reader_text' => '&nbsp;',

                'before_page_number' => '',

                'mid_size'    => 3,

            ) );

解决方案-2(自定义模板)

构造 Wp 查询


        // prepare arguments

        $args = array( 'post_type' => 'product',

       'stock' => 1,

       'product_cat' => 'earrings-ring',

       'posts_per_page' => '12',

       'order' => 'DESC',

       'paged' => $paged 

       );


        //prepare query

        $query = new WP_Query( $args );

        $totalPage=$query->max_num_pages;

调用分页功能


                $big = 999999999; // need an unlikely integer

                echo paginate_links( array(

                    'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),

                    'format' => '?paged=%#%',

                    'current' => max( 1, get_query_var('paged') ),

                    'total' => $totalPage

                ) );

此解决方案适用于自定义页面模板。您可以查看 wordpress 官方文档。


查看完整回答
反对 回复 2021-06-19
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

在活动主题function.php文件中添加以下代码。

注意:如果您有子主题,请在子主题function.php文件中添加此代码


if ( ! function_exists( 'number_pagination' ) ) :

    function number_pagination() {

        global $wp_query;


        $big = 999999999; 


        echo paginate_links( array(

            'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),

            'format' => '?paged=%#%',

            'current' => max( 1, get_query_var('paged') ),

            'total' => $wp_query->max_num_pages

        ) );

    }

endif;

在要显示数字分页的位置添加以下代码。


<?php number_pagination( $loop ); ?>

</div>


查看完整回答
反对 回复 2021-06-19
  • 2 回答
  • 0 关注
  • 163 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信