• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела wpt лично.

Помощь Сортировка по цене

mishiko

Постоялец
Регистрация
5 Сен 2011
Сообщения
320
Реакции
135
Здравствуйте. Есть небольшой опыт по битриксу не могу разобраться. Нужна сортировка по цене по возрастанию по умолчанию
Вот шаблон каталога
section.php

Для просмотра ссылки Войди или Зарегистрируйся

Как мне сделать сортировку по цене?

Пробовал добавить вот этот код

Код:
<?if ($_GET["sort"] == "price")
{
$arParams["ELEMENT_SORT_FIELD"] = "catalog_PRICE_2";
}
if ($_GET["order"] == "vozvr") $arParams["ELEMENT_SORT_ORDER"]= "asc";
if ($_GET["order"] == "ubiv") $arParams["ELEMENT_SORT_ORDER"]= "desc";
?>
<div class="sort">Сортировать по цене: <a href="?sort=price&order=ubiv">по убыв.</a> | <a href="?sort=price&order=vozvr">по возвр.</a></div>

Все работает но не по умолчанию
 

Вложения

  • section.txt
    12,3 KB · Просмотры: 2
vozvr и ubiv - это жуть не делайте так. Лучше обзовите asc и desc и тот кто будет поддерживать ваш код не будет обзывать вас...

У вас лишний if, достаточно его удалить и сортировка по-умолчанию будет asc.
PHP:
$arParams["ELEMENT_SORT_ORDER"]= "asc";
if ($_GET["order"] == "ubiv") $arParams["ELEMENT_SORT_ORDER"]= "desc";
 
vozvr и ubiv - это жуть не делайте так. Лучше обзовите asc и desc и тот кто будет поддерживать ваш код не будет обзывать вас...

У вас лишний if, достаточно его удалить и сортировка по-умолчанию будет asc.
PHP:
$arParams["ELEMENT_SORT_ORDER"]= "asc";
if ($_GET["order"] == "ubiv") $arParams["ELEMENT_SORT_ORDER"]= "desc";
Не помогло
 
В приложенных файлах. Этот параметр закомментирован, там где он передаётся на апи приложения.
вот тут:
PHP:
            "ELEMENT_SORT_FIELD" => $sort,
            "ELEMENT_SORT_ORDER" => $sort_order,
            //"ELEMENT_SORT_FIELD" => $arParams["ELEMENT_SORT_FIELD"],
            //"ELEMENT_SORT_ORDER" => $arParams["ELEMENT_SORT_ORDER"],
можно попробовать сделать наоборот:
PHP:
            //"ELEMENT_SORT_FIELD" => $sort,
            //"ELEMENT_SORT_ORDER" => $sort_order,
            "ELEMENT_SORT_FIELD" => $arParams["ELEMENT_SORT_FIELD"],
            "ELEMENT_SORT_ORDER" => $arParams["ELEMENT_SORT_ORDER"],
Но это сломает ту логику сортировки, которая есть в настоящий момент.
Останется только сорт по прайсу.

PS: Код этих файлов ужасен, такое впечатление что писал пьяный стажер в пт вечером, мечтая о пиве и футболе. Потому разбирать, что именно сломается и уже сломано никакого желания
 
В приложенных файлах. Этот параметр закомментирован, там где он передаётся на апи приложения.
вот тут:
PHP:
            "ELEMENT_SORT_FIELD" => $sort,
            "ELEMENT_SORT_ORDER" => $sort_order,
            //"ELEMENT_SORT_FIELD" => $arParams["ELEMENT_SORT_FIELD"],
            //"ELEMENT_SORT_ORDER" => $arParams["ELEMENT_SORT_ORDER"],
можно попробовать сделать наоборот:
PHP:
            //"ELEMENT_SORT_FIELD" => $sort,
            //"ELEMENT_SORT_ORDER" => $sort_order,
            "ELEMENT_SORT_FIELD" => $arParams["ELEMENT_SORT_FIELD"],
            "ELEMENT_SORT_ORDER" => $arParams["ELEMENT_SORT_ORDER"],
Но это сломает ту логику сортировки, которая есть в настоящий момент.
Останется только сорт по прайсу.

PS: Код этих файлов ужасен, такое впечатление что писал пьяный стажер в пт вечером, мечтая о пиве и футболе. Потому разбирать, что именно сломается и уже сломано никакого желания

Спасибо. помогло но не на всех категориях
 
Назад
Сверху