EN EN

Сортировка по убыванию и возрастанию в компоненте bitrix:sale.personal.order.list

Добавление сортировки стандартному компоненту список заказов в 1С-Битрикс

⬅️ Вернуться к статьям
Дата публикации AccelLoad
2 августа 2022
Количество просмотров AccelLoad
29
Теги AccelLoad
1С-Битрикс
bitrix:sale.personal.order.list
Сортировка по убыванию и возрастанию в компоненте bitrix:sale.personal.order.list

class.php

Для начала находим файл class.php по пути /bitrix/components/bitrix/sale.personal.order.list/class.php.

В нём находим условие примерно на 346 строке $this->sortOrder = (mb_strlen($_REQUEST["order"]) != "" && $_REQUEST["order"] == "ASC" ? "ASC": "DESC");

И меняем заглавные буквы (верхний регистр) направлений на нижний, чтобы получилось $this->sortOrder = (mb_strlen($_REQUEST["order"]) != "" && $_REQUEST["order"] == "asc" ? "asc": "desc");

Далее перед вызовом компонента дописываем условия проверки GET-параметров.


<?
if (isset($_GET['sort'])) {
    $_REQUEST['order'] = $_GET['sort'];
};
$APPLICATION->IncludeComponent(
    "bitrix:sale.personal.order.list",
    "accelload",
    array(
        ...
    ),
    false
);?>

И теперь через парный тег <a></a> передаём GET-параметры asc (по возрастанию) или desc (по убыванию) в шаблоне этого компонента.


<a rel="nofollow" href="<?=$APPLICATION->GetCurPageParam('sort=asc', array('sort'));?>">По возрастанию</a>
<a rel="nofollow" href="<?=$APPLICATION->GetCurPageParam('sort=desc', array('sort'));?>">По убыванию</a>

Скролл вверх