Чтобы использовать мультиязычный фильтр или сортировку в Хайлоад Блоках, необходимо указывать все поля из таблицы переводов через префикс "TR".
Фильтр
Например, если мы хотим фильтровать по названию, то следует указывать поле в формате "TR.UF_NAME".Пример использования фильтра по переведенному названию
Code
Copy code
Code copied!
\Bitrix\Main\Loader::IncludeModule("modulemarket.translator"); $entity = \Modulemarket\Translator\Highloadblock\HighloadBlockTable::compileEntity('6'); $entityDataClass = $entity->getDataClass(); // Установим фильтр по полю переводв $rsPropEnums = $entityDataClass::getList([ "filter" => ["TR.UF_NAME" => "China"], ]); while ($arEnum = $rsPropEnums->fetchAll()) { echo '<pre>' . print_r($arEnum, 1) . '</pre>'; }
Code
Copy code
Code copied!
$rsPropEnums = $entityDataClass::getList([ "filter" => ["!TR.UF_NAME" => false], ]);
Сортировка
Добавим сортировку по переведенному полю по убыванию
Code
Copy code
Code copied!
$rsPropEnums = $entityDataClass::getList([ "filter" => ["!TR.UF_NAME" => false], "order" => ["TR.UF_NAME" => "desc"], ]);
Количество показов: 320
Дата изменения: 24.06.2024 07:51:33