2014-10-27 6 views
0

В WordPress В настоящее время я использую приведенный ниже код, чтобы отобразить как содержимое страницы testimonials, так и сообщения из настраиваемого типа сообщений testimonials.WordPress add Pagination to custom post type

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

Более подробная информация обязательно спрашивайте.

<?php /* Template Name: Testimonials */ get_header(); ?> 

<div id="main"> 

    <div class="fullwidth"> 

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

     <h1><?php the_field('h1_title'); ?></h1> 

     <div class="width"> 

      <ul class="menu slider"> 

       <?php if(wp_list_pages('child_of='.$post->ID.'&echo=0&exclude=2')) { $list_of_pages = wp_list_pages('echo=0&title_li=&depth=1&child_of='.$post->ID.'&exclude=2'); $list_pages = explode('<li class="',$list_of_pages); $len = count($list_pages); for ($i = 0; $i <= $len-2; $i++) : echo $list_pages[$i] . '<li class="list-item-' . ($i+1) . ' '; endfor; echo $list_pages[$i]; } 

       elseif(get_the_title($post->post_parent) != the_title(' ' , ' ',false)) { $list_of_pages = wp_list_pages('echo=0&title_li=&depth=1&child_of='.$post->post_parent.'&title_li=&exclude=2'); $list_pages = explode('<li class="',$list_of_pages); $len = count($list_pages); for ($i = 0; $i <= $len-2; $i++) : echo $list_pages[$i] . '<li class="list-item-' . ($i+1) . ' '; endfor; echo $list_pages[$i]; } ?> 

      </ul> 

     </div> 

     <h2><?php the_field('h2_title'); ?></h2> 

     <?php the_content(); ?> 

     <?php endwhile; wp_reset_postdata(); ?> 

     <div class="posts"> 

      <?php $query = new WP_Query(array ('post_type' => 'testimonial', 'order' => 'DESC', 'posts_per_page' => 9, 'orderby'=> menu_order)); while ($query->have_posts()) : $query->the_post(); ?> 

      <div class="blog-post"> 

       <div class="content"> 

        <h3><?php the_title();?></h3> 

        <h4><?php the_field('visit_date'); ?></h4> 

        <?php the_content(); ?> 

       </div> 

       <div class="clear"></div> 
      </div> 

      <?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> 

     </div> 

    </div> 

    <?php get_footer(); ?> 
+1

Вы уверены, что у вас есть достаточное количество сообщений в составляют разбивку на страницы? –

+0

Да, у меня более 300! – Giles

ответ

1

Я чувствую, что вы не получаете и прохождения страницы #, попробуйте изменить/заменить код, как это

$query = new WP_Query(array ('post_type' => 'testimonial', 'order' => 'DESC', 'posts_per_page' => 9, 'orderby'=> menu_order)); while ($query->have_posts()) : $query->the_post(); 

в

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

$query = new WP_Query(array ('post_type' => 'testimonial', 'order' => 'DESC', 'posts_per_page' => 9, 'orderby'=> 'menu_order','paged' => $page)); 
while ($query->have_posts()) : $query->the_post(); 
+0

Используя ваш код, кажется, я не могу понять почему? 'Ошибка анализа: синтаксическая ошибка, неожиданное« endwhile »(T_ENDWHILE) в строке 60' – Giles

+1

Позвольте мне проверить ваш полный код –

+0

Я не получил ошибку, используя предыдущий код, очевидно! – Giles