Кастомить catalog.smart.filter файл class.php
1. В методе makeSmartUrl найди
//Numbers && calendar == ranges
if (
$arItem["PROPERTY_TYPE"] == "N"
|| $arItem["DISPLAY_TYPE"] == "U"
)
{
if (strlen($arItem["VALUES"]["MIN"]["HTML_VALUE"]) > 0)
$smartPart["from"] = $arItem["VALUES"]["MIN"]["HTML_VALUE"];
if (strlen($arItem["VALUES"]["MAX"]["HTML_VALUE"]) > 0)
$smartPart["to"] = $arItem["VALUES"]["MAX"]["HTML_VALUE"];
}
else
{
foreach($arItem["VALUES"] as $key => $ar)
{
if (
(
$ar["CHECKED"]
|| $ar["CONTROL_ID"] === $checkedControlId
)
&& strlen($ar["URL_ID"])
)
{
$smartPart[] = $ar["URL_ID"];
}
}
}
в else замени два $ar["URL_ID"] на $ar["VALUE"]
2. Метод searchValue замени на
public function searchValue($item, $lookupValue)
{
$error = "";
$searchValue = \Bitrix\Main\Text\Encoding::convertEncoding($lookupValue, LANG_CHARSET, "utf-8", $error);
if (!$error)
{
$encodedValue = rawurlencode($searchValue);
foreach($item as $itemId => $arValue)
{
$convertValue = \Bitrix\Main\Text\Encoding::convertEncoding($arValue['VALUE'], LANG_CHARSET, "utf-8", $error);
if ($encodedValue === rawurlencode($convertValue))
return $itemId;
}
}
return false;
}