Crmgo Blog

Bitrix, wyszukiwanie po kodzie w inteligentnym filtrze

Bitrix, wyszukiwanie po kodzie w inteligentnym filtrze

Uwaga! W tej metodzie edytowany jest plik jądra Bitrix, a po aktualizacji Bitrix zmiany zostaną nadpisane. Aby dodać kod do indeksu podczas tworzenia lub importu nowego produktu, edytujemy: ./bitrix/modules/iblock/classes/mysql/iblockelement.php, znajdujemy: zamieniamy na: Aby zindeksować już załadowane produkty, tworzymy i wykonujemy php…

Bitrix, wyszukiwanie po kodzie w inteligentnym filtrze

Uwaga! W tej metodzie edytowany jest plik jądra Bitrix, a po aktualizacji Bitrix zmiany zostaną nadpisane.

Aby dodać kod do indeksu podczas tworzenia lub importu nowego produktu, edytujemy:

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

znajdujemy:

$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)
);

 

zamieniamy na:

$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"]
);

 

Aby zindeksować już załadowane produkty, tworzymy i wykonujemy plik PHP o zawartości:

<? 
;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);

?>

 

Uwaga: wpis mógł powstać z pomocą AI i redakcji. Odpowiedzialny: Dmytro Lomaka, Kaltenkirchen.