Помогите сделать пагинацию.

Пожалуйста помогите сделать пагинацию, сильно не пинайте я только учусь)

<?php
/*

Template Name: Страница обновлённых записей

*/

?>
<?php get_header(); ?>
<main id="main" class="site-main clearfix" role="main" <?php hybrid_attr( 'content' ); ?>>

<div id="primary" class="content-area">
<div id="content">
<?php get_template_part( 'breadcrumbs' ); ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', 'page' ); ?>
<?php

// задаем нужные нам критерии выборки данных из БД

$args = array(

'post_type' => 'post',

'orderby' => 'modifed'

);
$query = new WP_Query( $args );
// Цикл

if ( $query->have_posts() ) {

while ( $query->have_posts() ) {

$query->the_post();

echo '<h2 class="widget-post-title"><a class="text-trim" href="' . esc_url( get_permalink() ) . '" rel="bookmark">' . esc_attr( get_the_title() ) . '</a></h2>';

}

_tk_pagination();

} else {

// Постов не найдено

}

/* Возвращаем оригинальные данные поста. Сбрасываем $post. */

wp_reset_postdata();

?>
<?php endwhile; // end of the loop. ?>
</div><!-- #content -->
</div><!-- #primary -->
<?php get_sidebar(); ?>
</main><!-- #main -->
<?php get_footer(); ?>

На главной странице в (index.php) пагинация выводится с помощью:

<?php // _tk_content_nav( 'nav-below' ); ?>
<?php _tk_pagination(); ?>
Добавить Комментарий

    Функция _tk_pagination() — не является встроенной функцией wp или функцией популярного плагина. Поэтому вам сложно помочь, так как я не представляю что там написано в этой вашей функции. Для пагинации можете воспользоваться плагином wp pagenavi или прислать код вашей функции, что бы можно было понять как она работает.

     

    Добавить Комментарий

    Эту функцию пагенации я брал с темы которая на бутстрапе сделанная, вот код функции:

    <?php
    
    // _tk Bootstrap pagination function
    
    // original: http://fellowtuts.com/wordpress/bootstrap-3-pagination-in-wordpress/
    
    /**
    
    *
    
    * @global int $paged
    
    * @global type $wp_query
    
    * @param int $pages
    
    * @param type $range
    
    */
    
    function _tk_pagination() {
    
    global $paged, $wp_query;
    if (empty($paged)) {
    
    $paged = 1;
    
    }
    $pages = $wp_query->max_num_pages;
    
    if (!$pages) {
    
    $pages = 1;
    
    }
    if (1 != $pages):
    $input_width = strlen((string)$pages) + 3;
    
    ?>
    
    <div class="text-center">
    
    <nav>
    
    <ul class="pagination">
    
    <li class="disabled hidden-xs">
    
    <span>
    
    <span aria-hidden="true"><?php _e('Страница', 'tk'); ?> <?php echo $paged; ?> <?php _e('из', 'tk'); ?> <?php echo $pages; ?></span>
    
    </span>
    
    </li>
    
    <?php if ($paged == 1): ?>
    
    <li class="disabled first"><span><i class="icon-angle-double-left"></i></i><span class="hidden-xs aria-hidden"><?php _e('Первая', 'tk'); ?></span></span></li>
    
    <?php else: ?>
    
    <li class="enabled first"><a href="<?php echo get_pagenum_link(1); ?>" aria-label="First"><i class="icon-angle-double-left"></i><span class="hidden-xs"><?php _e('Первая', 'tk'); ?></span></a></li>
    
    <?php endif; ?>
    <?php if ($paged == 1): ?>
    
    <li class="disabled"><span><i class="icon-angle-left"></i><span class="hidden-xs aria-hidden"><?php _e('Назад', 'tk'); ?></span></span></li>
    
    <?php else: ?>
    
    <li><a href="<?php echo get_pagenum_link($paged-1); ?>" aria-label="Previous"><i class="icon-angle-left"></i><span class="hidden-xs"><?php _e('Назад', 'tk'); ?></span></a></li>
    
    <?php endif; ?>
    <?php $start_page = min(max($paged - 2, 1), max($pages - 4, 1)); ?>
    
    <?php $end_page = min(max($paged + 2, 5), $pages); ?>
    <?php for ($i = $start_page; $i <= $end_page; $i++): ?>
    
    <?php if ($paged == $i): ?>
    
    <li class="active"><span><?php echo $i; ?><span class="sr-only">(current)</span></span></li>
    
    <?php else: ?>
    
    <li><a href="<?php echo get_pagenum_link($i); ?>"><?php echo $i; ?></a></li>
    
    <?php endif; ?>
    
    <?php endfor; ?>
    <?php if ($paged == $pages): ?>
    
    <li class="disabled"><span><span class="hidden-xs aria-hidden"><?php _e('Вперёд', 'tk'); ?></span><i class="icon-angle-right"></i></span></li>
    
    <?php else: ?>
    
    <li><a href="<?php echo get_pagenum_link($paged+1); ?>"aria-label="Next"><span class="hidden-xs"><?php _e('Вперёд', 'tk'); ?></span><i class="icon-angle-right"></i></a></li>
    
    <?php endif; ?>
    <?php if ($paged == $pages): ?>
    
    <li class="disabled last"><span><span class="hidden-xs aria-hidden"><?php _e('Последняя', 'tk'); ?></span><i class="icon-angle-double-right"></i></span></li>
    
    <?php else: ?>
    
    <li class="enabled last"><a href="<?php echo get_pagenum_link($pages); ?>" aria-label='Last'><span class='hidden-xs'><?php _e('Последняя', 'tk'); ?></span><i class="icon-angle-double-right"></i></a></li>
    
    <?php endif; ?>
    
    </ul>
    
    </nav>
    
    </div>
    
    <?php
    
    endif;
    
    }
    
    

    Перепишите начало функции:

    
    function _tk_pagination($customPage = false, $customQuery = false) {
    if(!empty($customPage) && !empty($customQuery)){
    $paged = $customPage;
    $wp_query = $customQuery;
    } else {
    global $paged, $wp_query;
    }
    .....
    
    

    Вместо:

    
    function _tk_pagination() {
    global $paged, $wp_query;
    .....
    
    

     

    Где вызываете пагинацию пропишите:

    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    
    _tk_pagination($paged, $query);
    
    
    в 04.12.2016.
    Добавить Комментарий

    Сделал,  пагинация появилась но при переходе на вторую и последующие страницы ничего не меняется, я имею ввиду одна и таже запись отображается.

    а ссылки в пагинации как вылядят?

    в 04.12.2016.

    вам еще добавить нужно к аргументам:

    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $args = array(
    'post_type' => 'post',
    'orderby' => 'modifed',
    'paged' => $paged
    );
    
    в 04.12.2016.
    Добавить Комментарий

    Добавил, вот сейчас всё работает как надо! Вы бы хоть рекламму поставили на сайт, чтобы хоть как-то отблагодарить! Спасибо вам огромное!

    Сайт не для заработка, а для поддержания себя так сказать в форме))

    И за одно помогать другим.

    в 04.12.2016.
    Добавить Комментарий

    Ваш ответ

    Размещая свой ответ, вы соглашаетесь с правилами сайта.