Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.
Общая суть задачи: появилось новое своство, которое нужно задать для всех товаров каталога.
Значения свойства забито в Excel-файл, делаю простенький импорт, в котором через API задаю значение нового свойства для каждого элемента.
В настройках инфоблока у данного свойства отмечаю "Значения свойства участвуют в поиске", обновляю все кэши, переиндексирую модуль инфоблоков.
Пытаюсь выполнить поиск по новозаведенному свойству - и... ничего не нахожу
Первая версия импорта обновляла значение свойства через CIBlockElement::SetPropertyValuesEx.
Переделываю обновление свойства на $el->Update($PRODUCT_ID, $arLoadProductArray,false,true,false), где 4-м параметром указываю TRUE на то, чтобы индекс элемента обновлялся. Вновь всё чищу, и вновь никакого результата.
Помогло добавление строки CIBlockElement::UpdateSearch($PRODUCT_ID, true);
В результате последнего действия происходила реальная переиндексация, добавлялось новоей свойство в индекс, и всё работало. Почему штатная переиндексация не помогала - до сих пор не понимаю. Главное - способ борьбы найден.
Назад в раздел
то ждем ваше обращение в нашей службе тех поддержки.
Индексация значения свойств элемента инфоблока
Столкнулся с новой любопытной вещью, связанной с индексацией свойств элемента инфоблока.Общая суть задачи: появилось новое своство, которое нужно задать для всех товаров каталога.
Значения свойства забито в Excel-файл, делаю простенький импорт, в котором через API задаю значение нового свойства для каждого элемента.
В настройках инфоблока у данного свойства отмечаю "Значения свойства участвуют в поиске", обновляю все кэши, переиндексирую модуль инфоблоков.
Пытаюсь выполнить поиск по новозаведенному свойству - и... ничего не нахожу
Первая версия импорта обновляла значение свойства через CIBlockElement::SetPropertyValuesEx.
Переделываю обновление свойства на $el->Update($PRODUCT_ID, $arLoadProductArray,false,true,false), где 4-м параметром указываю TRUE на то, чтобы индекс элемента обновлялся. Вновь всё чищу, и вновь никакого результата.
Помогло добавление строки CIBlockElement::UpdateSearch($PRODUCT_ID, true);
В результате последнего действия происходила реальная переиндексация, добавлялось новоей свойство в индекс, и всё работало. Почему штатная переиндексация не помогала - до сих пор не понимаю. Главное - способ борьбы найден.
Назад в раздел
Подписаться на новые материалы раздела: