2015-06-17 2 views
0

im используя этот настраиваемый цикл на странице wordpress. Он отлично работает (хотя здесь он упрощен). Тем не менее, он отображает 100 результатов поиска на одной странице. Поскольку это настраиваемый цикл, я изо всех сил пытаюсь заставить его работать с некоторой разбиением на страницы (в идеале 10 на страницу). Кто-нибудь достиг этого раньше и готов указать мне в правильном направлении?Пользовательская петля разбиения на страницы Wordpress

Большое спасибо ...

<ul id="property-holder"> 
    <?php if ($location_query->have_posts()) : 
    $row_counter = 0; 

    while ($location_query->have_posts()) : 
    $location_query->the_post(); 

    $date = get_field("availdate"); 
    $date = str_replace('/', '-', $date); 
    $date = date('Y-m-d', strtotime($date)); 

    if ($date > $future) { 
    $row_counter += 1; 

    echo '<li id="property-item">'; 
    echo '<p>' . 'Test' . '</p>'; 
    echo '</li>'; 

    } 

    endwhile; 

    else : 

    echo 'No Results'; 
    endif; wp_reset_postdata(); ?> 

    </ul> 

    <nav> 
    <?php previous_posts_link('&laquo; Previous 10 Results') ?> 
    <?php next_posts_link('Next 10 Results &raquo;') ?> 
    </nav> 
+0

Я не уверен, действительно ли это страница или файл поиска default.php. если это поиск по умолчанию, почему вы запускаете пользовательский запрос. Используйте 'pre_get_posts' –

ответ

1

Я предполагаю, что вы definded $location_query как этот $location_query = new WP_Query($args);, теперь в ваших аргументах добавить posts_per_page => 10. Это разделит ваши результаты на 10 пунктов на странице. Если ваша страница не отображает новые элементы на следующей странице, сделайте ваш запрос следующим образом:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$args = array(
    'post_type' => 'your post type', 
    'posts_per_page' => 10, 
    'paged' => $paged 
); 
$location_query = new WP_Query($args); 
Смежные вопросы