Моя нумерация страниц не работает в пользовательской теме WordPress

Я использую pagination_bar из function.php. Я реализовал это на пользовательской странице под названием page-blog.php. Я ограничил страницы до 2 на странице и у меня есть 3 сообщения в блоге. После того, как я вставил функцию pagination_bar(), она показывает мне фатальную ошибку.

Я уже видел здесь какое-то решение, но ни одно из них не помогает. Я попытался сделать некоторое смещение.

function.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>'
        ));
    }
}

страница-блог.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, поскольку функция фактически вызывается, но я получаю сообщение об ошибке выше, когда обновляю страницу.

Во-первых, вы не должны устанавливать смещение и нумерацию страниц. Смещение нарушает эту функциональность. Вам нужен только параметр "paged". Убрать «смещение».

DubVader 22.07.2019 18:56

Я сделал все, что вы мне сказали, и все еще не работает

Veljko Kukic 22.07.2019 21:19
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
65
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 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>

Не видит страницы. я вообще не вижу

Veljko Kukic 22.07.2019 22:15

Вы можете проверить это на странице ProMoversDev. Он жив, и я кодирую его прямо сейчас. Я попробую это решение, которое вы мне дали, и мы посмотрим, сработает ли оно.

Veljko Kukic 22.07.2019 22:16

Проверьте веб-страницу -> prodenvermovers.wpupkeep.org/blog, где написано, что должна быть предыдущая кнопка alignleft, но она все еще не отображается...

Veljko Kukic 22.07.2019 22:18

Также я хотел бы задать вам еще один вопрос. Можем ли мы вместо новых и старых постов поставить страницы? Нравится paginate_links()? Я пробовал, но это тоже не работает

Veljko Kukic 23.07.2019 07:27

Вы можете написать все, что хотите, в этот крючок. Например, <?php previous_posts_link('Yesterday') ?>. Это то, что вы спрашиваете?

DubVader 23.07.2019 14:59

Другие вопросы по теме