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