Создание сайтов на 1С-Битрикс

Добавляем в search.title поиск по артикулу или по другому свойству

Если вам нужно добавить в поиск по заголовкам поиск по вашему свойству, например по артикулу

1. Добавляем в init.php этот код. Проверяем код свойства, по которому компонент должен искать.

// Добавляем артикул в название элемента поискового индекса
// Для поиска по артикулу
AddEventHandler("search", "BeforeIndex", "BeforeIndexHandler");

function BeforeIndexHandler($arFields)
{

    if(!CModule::IncludeModule("iblock"))
        return $arFields;

    if($arFields["MODULE_ID"] == "iblock")
    {
        $db_props = CIBlockElement::GetProperty(
            $arFields["PARAM2"],
            $arFields["ITEM_ID"],
                Array("sort" => "asc"),
                Array("CODE"=>"CML2_ARTICLE") // Код свойства
        );
        if($ar_props = $db_props->Fetch()) {
            $arFields["TITLE"] .= " ".$ar_props["VALUE"];
        }
    }

    return $arFields; // вернём изменения
}

2. Переходим в Админку сайта, Настройки - Поиск - Переиндексация, убираем галочку "Переиндексировать только измененные" и нажимаем кнопку "Переиндексировать"

3. Готово. Остаётся проверить поиск )

Логотип SiteBERG
Изменено: 27.08.2024 17:02

Статьи

Что нужно сделать?