Битрикс поиск по ID

Стандартно 1С-Битрикс не ищет по ID. Исправляем этот момент 🙂

Как в Битриксе искать по ID товара (элемента)?

Для поиска контента на сайте, обычно используют bitrix:search.title или компонент Поиск по заголовкам. Данный компонент (как несложно догадаться) ищет по названиям элементов, и выдает вам результат аяксом сразу же под поисковой строкой. В настройках вы можете ограничить область поиска выбрав нужные инфоблоки.

битрикс поиск

На моей практике, самый популярный случай это поиск по Каталогу, а точнее — по названию товара. Перейдем к реализации.

Шаг 1. Свойство в админке + init.php

Создадим в админке свойство с символьным кодом MYID и в настройках ставим галочку Значения свойства участвуют в поиске.

Теперь, переиндексируем все элементы. Для этого создаем страницу со следующим содержимым:

38 — ID вашего инфоблока с товарами. Мы записываем в свойство наш ID, если оно не задано. По этому свойству мы и будем искать. После того как скрипт выполнится, его можно удалить.

ПС — как вы видите, я в настройках фильтрации не указывал:

Хотя наверное стоило 🙂 .

Чтобы не вбивать в ручную ID, добавим в init.php следующий код:

Это позволит при создании нового товара сразу же записывать его ID.
init.php это файл который создается в папке /bitrix/php_interface/

Шаг 2. Переиндексация

Теперь нам необходимо запустить переиндексацию. Делается это весьма просто:
http://ВАШ_САЙТ/bitrix/admin/search_reindex.php?lang=ru
ВАШ_САЙТ — вставляем домен и вуаля, вы на странице. Убираем галочку Переиндексировать только измененные и запускаем.

Шаг 3. Перенос компонента

На это шаге вам необходимо скачать компонент. Помещаем его в папку /bitrix/components/. Обратите внимание, что пространство имен компонента не bitrix а ready. К сожалению обычный компонент на рассчитан на поиск по другим свойствам, только по заголовкам.

Надеюсь вы знаете, как в этот код добавить параметры и вызвать компонент 🙂 Для простоты, можно просто поменять в вашем search.title birix на ready. Зачем мы это делаем не в папке битрикс? Потому что при обновлении эти файлы могут обновиться, и в какой-то момент вы зададите себе вопрос «почему ничего не работает?» 🙂 .

Для самых любопытных оставляю ссылку на документацию.

Если на вашем сайте необходимо выполнить Поиск по id товара или элемента обращайтесь ко мне, помогу с настройкой

автор: Dmitriy

Занимаюсь веб-разработкой с 2011 года.

Предоставляю услуги по созданию проектов на CMS 1С-Битрикс - сайты, шаблоны и компоненты с нуля.

Другие виды работ:
  • Доработка функционала на уже существующих проектах
  • Вёрстка макетов (HTML, CSS, JavaScript, jQuery, JADE, SASS, Gulp)
  • Скрипты на PHP и JS (jQuery)

Если у вас остались вопросы, свяжитесь со мной любым удобным для вас способом или оставьте комментарий внизу.

E-mail: dmitriyribka@gmail.com
Skype: cinemacreaterus

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *