Всем привет !
Проблема с сохранением параметра сортировки в урле пагинации.
В компоненте system.pagenavigation есть строка
| Код |
|---|
$arResult["NavQueryString"]= removeQueryString(); |
Сама функция:
| Код |
|---|
function removeQueryString($value_to_delete) { parse_str($_SERVER['QUERY_STRING'], $vars); $keys = array('price_from','price_to','size_w_from','size_w_to','size_h_from','size_h_to','size_h_to','size_h_to','size_d_from',"size_d_to","COLOR","FASAD","sortn","method","ID","NAME","TITLE","KOEF","ELID","q","TITLE_SEO","PAGE_NAME","FID","TID","MID","sectid","SECTION_CHANGE","OFABRIC","DFABRIC","WIDTH","PRODUCTID"); if(!empty($value_to_delete)){unset($keys[array_search($value_to_delete,$keys)]);} $keys = array_flip($keys); $result = http_build_query(array_intersect_key($vars, $keys)); return $result;} |
при переходе на следующую старницу параметры сортировки не передаются, но при этом проблема только на странице подкатегорий типа:
/catalog/mebel-dlya-ofisa/category-ofisnye-stoly/
На страницах типа:
/catalog/mebel-dlya-ofisa/
все работает как нужно.
Результаты работы
| Код |
|---|
var_dump($arResult["NavQueryString"]); print_r($_GET); |
На странице каталога:
| Код |
|---|
string(32) "sortn=catalog_PRICE_1&method=asc" Array ( [sortn] => catalog_PRICE_1 [method] => asc ) |
на странице подкатегории:
| Код |
|---|
string(0) "" Array ( [sortn] => shows [method] => asc [PAGEN_1] => 2 [SECTION_CODE] => mebel-dlya-ofisa [CAT] => ofisnye-stoly )
|
Почему в одном случае работает в другом нет ?