Добрый день.
На сайте есть категории:
Санатории (id=10)
Отели (id=11)
У каждой категории есть одинаковые регионы, по сути отличаются только отображением санаториев или отелей.
Для того чтобы не плодить дубли рубрик регионов сделал условие в archive.php :
array(11), 'cat' => $catid));
}
elseif ($_GET['bctype'] == 'otel') {
query_posts(array('category__not_in' => array(10), 'cat' => $catid));
}
else {
}
// дальше простой цикл
?>
чтобы получать из меню нужный мне GET, прописал два Walker’a в funtions.php
classes );
$class_names = ' class="' .esc_attr( $class_names ). '"';
$output.= '<li>ID . '"' .$class_names. '>';
// назначаем атрибуты a-элементу
$attributes.= !empty( $item->url ) ? ' href="' .esc_attr($item->url). '?bctype=sanatorium"' : '';
$item_output = $args->before;
// проверяем, на какой странице мы находимся
$current_url = (is_ssl()?'https://':'http://').$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$item_url = esc_attr( $item->url );
if ( $item_url = $current_url ) $item_output.= '<a>'.$item->title.'</a>';
else $item_output.= $item->title;
// заканчиваем вывод элемента
$item_output.= $args->after;
$output.= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );
}
}
// собираем меню для отелей
class otelWalker extends Walker_Nav_Menu {
function start_el(&$output, $item, $depth, $args) {
// назначаем классы li-элементу и выводим его
//$class_names = join( ' ', $item->classes );
$class_names = ' class="' .esc_attr( $class_names ). '"';
$output.= '<li>ID . '"' .$class_names. '>';
// назначаем атрибуты a-элементу
$attributes.= !empty( $item->url ) ? ' href="' .esc_attr($item->url). '?bctype=otel"' : '';
$item_output = $args->before;
// проверяем, на какой странице мы находимся
$current_url = (is_ssl()?'https://':'http://').$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$item_url = esc_attr( $item->url );
if ( $item_url = $current_url ) $item_output.= '<a>'.$item->title.'</a>';
else $item_output.= $item->title;
// заканчиваем вывод элемента
$item_output.= $args->after;
$output.= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );
}
}
?>
Дальше задача, выводить по 5 записей с цифровой постраничной навигацией, с этим всегда справлялся плагин wp-pagenavi, но на этот раз при адресе вида:
Первая страница отображается нормально:
но на второй он так же показывает данные с первой страницы…:
В связи с чем может быть связана данная проблема?
В рубриках где нет посторонних GET запросов отображаются страницы нормально.


А если использовать для постраничной разбивки
?
насколько я знаю это для страниц? разделаем контент при помощи nextpage и получаем постраничный текст на странице.
а в этой задаче записи выводятся в рубрике.
Если использовать стандарт (next_posts_link и previous_posts_link), то тоже самое.
Видимо query_posts не выдает по каким-то причинам номер страницы.
Спасибо Sergey Biryukov:
$catid = get_query_var('cat'); if ($_GET['bctype'] == 'sanatorium') { query_posts(array('category__not_in' => array(11), 'cat' => $catid, 'paged' => get_query_var('paged'))); } elseif ($_GET['bctype'] == 'otel') { query_posts(array('category__not_in' => array(10), 'cat' => $catid, 'paged' => get_query_var('paged'))); }