【问题标题】:My pagination doesnt work in wordpress custom theme我的分页在 wordpress 自定义主题中不起作用
【发布时间】:2019-07-23 03:27:02
【问题描述】:

我正在使用来自 function.php 的 pagination_bar。我在名为 page-blog.php 的自定义页面中实现了这一点。我将页面限制为每页只有 2 个,并且我有 3 个博客文章。在我放置 pagination_bar() 函数后,它向我显示了致命错误。

我已经在这里看到了一些解决方案,但它们都没有帮助。我试过做一些补偿。

函数.php

function pagination_bar() {
    global $wp_query;

    $total_pages = $wp_query->max_num_pages;

    if ($total_pages > 1){
        $current_page = max(1, get_query_var('paged'));

        echo paginate_links(array(
            'base' => get_pagenum_link(1) . '%_%',
            'format' => 'page/%#%',
            'current' => $current_page,
            'total' => $total_pages,
            'prev_text' => '<i class="fa fa-angle-left"></i>',
            'next_text' => '<i class="fa fa-angle-right"></i>'
        ));
    }
}

page-blog.php

             <div class="col-xl-8 col-md-12 col-lg-8 col-sm-12 col-xs-12 md-blog-posts">

                        <?php 

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


                            $homePagePosts = new WP_Query(array(
                                'posts_per_page' => '2',
                                'post_type'   => 'post',
                                'has_archive' =>  true,
                                'post_status' =>  'publish',
                                'order'       =>  'DESC',
                                'paged' => $paged,


                            ));
                        if($homePagePosts->have_posts()) :
                            while($homePagePosts->have_posts()) :
                            $homePagePosts->the_post(); ?>
                            <div class="col-xs-12 col-md-12 col-lg-12 md-blog-blog">
                                <div class="md-blog-img">
                                        <div class="img-container">
                                            <div class="positioning">
                                                <span class="md-blogdate-number"><?php the_time('F d, Y.'); ?></span>
                                                <h4 class="md-blog-title"><?php echo get_the_title() ?></h4>
                                                <a href="<?php the_permalink(); ?>" class="btn md-button-read-more" id="md-blog-button">Read More</a> 
                                            </div>
                                            <div class="md-blog-img"><?php  the_post_thumbnail() ?></div>
                                    </div>
                                </div>
                            </div>
                            <?php endwhile;  ?>


                         <?php else : ?>

                            <h1>There is no posts at this moment</h1>

                         <?php endif; ?>

                         <div class="md-pagination-holder" style="background: #333; width:50px; height: 50px; color: #fff;">            
                            <?php paginate_bar(); ?>
                        </div>
                </div>

你也可以在这里查看网站-> http://prodenvermovers.wpupkeep.org/blog/

我遇到致命错误。

编辑:http://prntscr.com/oij1dr

我将 paginate_bar 更改为 pagination_bar,因为实际上调用了函数,但是当我刷新页面时出现上述错误。

【问题讨论】:

  • 首先,您不应该设置偏移量和分页。偏移量会破坏此功能。您只需要“分页”参数。删除“偏移量”。
  • 我做了你告诉我的所有事情,但仍然没有工作

标签: php wordpress function pagination blogs


【解决方案1】:

试试这个看看你是否可以让页面工作。在这个例子中,它只是使用内置的 WP 钩子来生成分页链接。另外,“仍然无法工作”是指您仍然收到错误,还是只是没有看到分页?

             <div class="col-xl-8 col-md-12 col-lg-8 col-sm-12 col-xs-12 md-blog-posts">

                        <?php 

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


                            $homePagePosts = new WP_Query(array(
                                'posts_per_page' => '2',
                                'post_type'   => 'post',
                                'has_archive' =>  true,
                                'post_status' =>  'publish',
                                'order'       =>  'DESC',
                                'paged' => $paged,


                            ));
                        if($homePagePosts->have_posts()) :
                            while($homePagePosts->have_posts()) :
                            $homePagePosts->the_post(); ?>
                            <div class="col-xs-12 col-md-12 col-lg-12 md-blog-blog">
                                <div class="md-blog-img">
                                        <div class="img-container">
                                            <div class="positioning">
                                                <span class="md-blogdate-number"><?php the_time('F d, Y.'); ?></span>
                                                <h4 class="md-blog-title"><?php echo get_the_title() ?></h4>
                                                <a href="<?php the_permalink(); ?>" class="btn md-button-read-more" id="md-blog-button">Read More</a> 
                                            </div>
                                            <div class="md-blog-img"><?php  the_post_thumbnail() ?></div>
                                    </div>
                                </div>
                            </div>
                            <?php endwhile;  ?>
                               <div class="nav-previous alignleft"><?php previous_posts_link( 'Older posts' ); ?></div>

                               <div class="nav-next alignright"><?php next_posts_link( 'Newer posts' ); ?></div>

                         <?php else : ?>

                            <h1>There is no posts at this moment</h1>

                         <?php endif; ?>


                </div>

【讨论】:

  • 没有看到分页。我根本看不到它
  • 您可以在 ProMoversDev 页面上查看。它的实时和即时编码它现在。我会试试你给我的这个解决方案,我们会看看它是否有效。
  • 检查网页 - > prodenvermovers.wpupkeep.org/blog 上面说 asd 应该有以前的 alignleft 按钮,但它不会仍然显示...
  • 另外我想再问你一个问题。我们可以代替新旧帖子放置页面吗?喜欢 paginate_links() 吗?我试过了,但那也不起作用
  • 你可以在那个钩子里写任何你想写的东西。例如,。你问的是这个吗?
猜你喜欢
  • 1970-01-01
  • 2014-01-25
  • 2013-08-20
  • 2017-03-19
  • 2011-08-13
  • 2018-09-23
  • 1970-01-01
  • 1970-01-01
  • 2020-12-10
相关资源
最近更新 更多