Разбиение на страницы на пользовательском запросе

Я использую следующий код с query_posts соединять пользовательский поиск:

$args = array(
    'post_type' => 'species',
    'meta_query' => $meta_query,
    'tax_query' => $tax_query
);

$meta_query соединен с несколькими сегментами кода как это:

if (!empty($_POST["s_aquarium_H"])) {
    $val = convert_values('size', $size, $_POST["s_aquarium_H"]);
    $aquarium_H = array(
        'key' => 'aquarium_H',
        'value' => $val,
        'type' => 'numeric',
        'compare' => '<='
    );
    $meta_query[] = $aquarium_H;
}

Это работает отлично и получено доступ путем посещения /advanced-search/.

Однако мое разбиение на страницы не делает. Когда Вы нажимаете Next Entries, URL изменяется на /advanced-search/page/2/ но просто вновь открыл форму Расширенного поиска.

Я предполагаю, что это вызвано тем, что я использую $_POST. Есть ли способ использовать разбиение на страницы с $_POST или сделайте я должен изменить свой код на get_query_var или что-то?


Править

Мои переписывать правила, кажется, корректны: /advanced-search/page/2/ дисплеи pagename: advanced-search, paged: 2 в Monkeyman Переписывают плагин Анализатора.

Rewrite Rules


ДАЛЬНЕЙШЕЕ РЕДАКТИРОВАНИЕ

Мой advanced-search.php страница использует следующий код, чтобы определить, должно ли это показать поисковую форму или результаты. Я предполагаю, что этому нужна перезапись, если я должен использовать разбиение на страницы:

<?php if ( isset( $_POST["act"] ) && $_POST["act"] == "s" ) : ?>

У кого-либо есть какие-либо идеи относительно того, как я мог пойти о перезаписи этого? Я предполагаю GET вместо POST потребности, которые будут использоваться?


Заранее спасибо,

2
08.04.2012, 23:51
3 ответа

В конце это не имело отношения к разбиению на страницы - как таковой.

Я должен был изменить свою всю форму на GET метод и $_REQUEST переменные, а не POST и $_POST.

0
19.02.2020, 22:35

Добавьте это к своему запросу:

'paged' => get_query_var('paged')

Как так:

$args = array(
    'post_type' => 'species',
    'meta_query' => $meta_query,
    'tax_query' => $tax_query,
    'paged' => get_query_var('paged')
);

Должен добиться цели.. Использование Wp-pageNavi? не забывайте добавлять
тег wp-pagenavi сразу после цикла заканчивается

<div class="navigation"><?php wp_pagenavi(); ?></div>

.
Надежда это помогает ;)
С наилучшими пожеланиями, Sagive.

1
19.02.2020, 22:35
  • 1
    Привет Sagive. Спасибо за это, но ту же проблему происходит. Я задаюсь вопросом, нужно ли сверху Вашего кода мне, некоторые дополнительные переписывают правила? –  dunc 01.04.2012, 00:00
  • 2
    На самом деле, нет, не случается так, что - Переписать плагин Анализатора говорит, что мой переписывает правила, корректны. –  dunc 01.04.2012, 00:01
  • 3
    Извините, не знайте тот плагин, но.. Вы попробовали его помощник? можно ли дать ссылку, или Вы работаете локально? –  Sagive SEO 01.04.2012, 00:28
  • 4
    Извините, не может дать Вам рабочий URL. Я обновил свое исходное сообщение с изображением результатов Переписать плагина Анализатора. В основном это показывает, что мой переписывает правила, корректны, но даже с Вашим кодом, мое разбиение на страницы не работает. Какая-либо идея? Я определил $wp_query глобальный также, на всякий случай.. –  dunc 01.04.2012, 02:21
if (!empty($_REQUEST["s_aquarium_H"])) {
   $_GET["s_aquarium_H"] = $_REQUEST["s_aquarium_H"];
    $val = convert_values('size', $size, $_REQUEST["s_aquarium_H"]);
    $aquarium_H = array(
        'key' => 'aquarium_H',
        'value' => $val,
        'type' => 'numeric',
        'compare' => '<='
    );
    $meta_query[] = $aquarium_H;
}
0
19.02.2020, 22:35
  • 1
    , награжденная за прибытие самого близкого к решению проблемы. –  dunc 09.04.2012, 00:05

Теги

Похожие вопросы