Crmgo Блог

Bitrix, пошук за Кодом у розумному фільтрі

Bitrix, пошук за Кодом у розумному фільтрі

Увага! У цьому способі редагується файл ядра Bitrix, при оновленні Bitrix зміни перезапишуться. Для внесення коду в індекс при створенні або імпорті нового товару правимо: ./bitrix/modules/iblock/classes/mysql/iblockelement.php знаходимо : міняємо на : Для індексації вже завантажених товарів, створюємо і виконуємо php…

Bitrix, пошук за Кодом у розумному фільтрі

Увага! У цьому способі редагується файл ядра Bitrix, під час оновлення Bitrix зміни будуть перезаписані.

Для внесення коду до індексу під час створення або імпорту нового товару правимо:

./bitrix/modules/iblock/classes/mysql/iblockelement.php

знаходимо :

$arFields["SEARCHABLE_CONTENT"] = ToUpper(
(is_set($arFields, "NAME")? $arFields["NAME"]: $ar_wf_element["NAME"])."\r\n".
($PREVIEW_TYPE_tmp=="html"? HTMLToTxt($PREVIEW_tmp): $PREVIEW_tmp)."\r\n".
($DETAIL_TYPE_tmp=="html"? HTMLToTxt($DETAIL_tmp): $DETAIL_tmp)
);

 

змінюємо на :

$arFields["SEARCHABLE_CONTENT"] = ToUpper(
(is_set($arFields, "NAME")? $arFields["NAME"]: $ar_wf_element["NAME"])."\r\n".
($PREVIEW_TYPE_tmp=="html"? HTMLToTxt($PREVIEW_tmp): $PREVIEW_tmp)."\r\n".
($DETAIL_TYPE_tmp=="html"? HTMLToTxt($DETAIL_tmp): $DETAIL_tmp)."\r\n".
$arFields["CODE"]
);

 

Для індексації вже завантажених товарів, створюємо та виконуємо php з вмістом:

<? 
;require($_SERVER["DOCUMENT_ROOT"]."/bitrix/php_interface/dbconn.php"); 
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); 
;require($_SERVER["DOCUMENT_ROOT"]."/bitrix/php_interface/after_connect.php"); 
$query = "UPDATE `b_iblock_element` SET `SEARCHABLE_CONTENT`= concat(`NAME`,' ',`CODE`) WHERE `IBLOCK_ID`= '32'"; 
$result = $DB->Query($query); 
$row=$result->Fetch(); 
print_r($row);

?>

 

Примітка: матеріал міг бути створений за підтримки ШІ з подальшою людською редакцією. Відповідальний за зміст: Dmytro Lomaka, Kaltenkirchen.