Россия

region-img

Документация Сотбит: Умный поиск. Интеграция с популярными шаблонами. Digital Web: Deluxe

Digital Web: Deluxe

 
Для установки компонентов поиска в Digital Web: Deluxe необходимо выполнять ряд действий, описанных ниже.
 

Шаг 1 – Выполнить базовую настройку

 
Рекомендуем предварительно разместить и настроить компоненты sotbit:search.title и sotbit:search.page на тестовой странице, чтобы в дальнейшем можно было их скопировать в необходимые места.
 

Шаг 2 – Установить интерактивный поиск

 
Определяем где размещен интерактивный поиск. Обычно он подключается в одном из перечисленных ниже файлов.
 
  1. В файле /sect_searchLine.php;
  2. В файле /sect_searchLine2.php;
  3. В файле /sect_searchLine3.php;
  4. В файле /sect_searchLine4.php.
 
Вместо стандартного компонента вставляем компонент интерактивного поиска, настроенный на тестовой странице.
 
Внешний вид компонента интерактивного поиска мы можем частично сохранить, т.к. в решении используется свой компонент поиска. Код шаблона компонента необходимо переносить вручную.
 
Для кастомизации скопируйте шаблон строки поиска из /bitrix/components/sotbit/search.title/templates/.default  в /bitrix/templates/#ID_ВАШЕГО_ШАБЛОНА#/components/sotbit/search.title/custom.
 
Примените скопированный шаблон к компоненту.
 
Отредактируйте код шаблона (приведите код файла /template.php в плане HTML к виду стандартной поисковой строки Delux), так же не забудьте разместить стили от стандартного компонента поиска Delux в style.css.
 

Шаг 3 – Установка поисковой страницы

 
В решении используется свой компонент поиска, устроенный по другим принципам, нежели стандартный компонент Битрикса.
 
Как правило, вызов компонента расположен в папке /search/ и использует стандартный встроенный шаблон.
 
Для установки необходимо скопировать текущий отображаемый шаблон из шапки /bitrix/components/dresscode/search/templates/.default в папку /bitrix/templatex/#ID_ВАШЕГО_ШАБЛОНА#/components/dresscode/search/custom и установить в настройках компонента вывод нового скопированного шаблона (с названием, указанным как custom).
 
Далее редактируем шаблон компонента, который был скопирован ранее /bitrix/templates/#ID_ВАШЕГО_ШАБЛОНА#/components/dresscode/search/custom/template.php.
 
Для упрощения интеграции можно поступить следующим образом:
 
  1. Подключить вызов нашего компонента sotbit:search.page в скрытом блоке;
  2. Перезаписать часть переменных возвращаемым нашим компонентом массивом.
 
Пример кода ниже:
 
// скрытый компонент поиска
echo '
"display:none;">';
     $arIDS = $APPLICATION->IncludeComponent(
          "sotbit:search.page",
          "",
          Array(
               "AJAX_MODE" => "N",
               "AJAX_OPTION_ADDITIONAL" => "",
               "AJAX_OPTION_HISTORY" => "N",
               "AJAX_OPTION_JUMP" => "N",
               "AJAX_OPTION_STYLE" => "Y",
               "CACHE_TIME" => "3600",
               "CACHE_TYPE" => "A",
               "CHECK_DATES" => "N",
               "DEFAULT_SORT" => "rank",
               "DISPLAY_BOTTOM_PAGER" => "Y",
               "DISPLAY_TOP_PAGER" => "Y",
               "FILTER_NAME" => "",
               "NO_WORD_LOGIC" => "N",
               "PAGER_SHOW_ALWAYS" => "Y",
               "PAGER_TEMPLATE" => "",
               "PAGER_TITLE" => "Результаты поиска",
               "PAGE_RESULT_COUNT" => "50",
               "PATH_TO_USER_PROFILE" => "",
               "RATING_TYPE" => "",
               "RESTART" => "N",
               "SHOW_RATING" => "",
               "SHOW_WHEN" => "N",
               "SHOW_WHERE" => "Y",
               "USE_LANGUAGE_GUESS" => "Y",
               "USE_SUGGEST" => "N",
               "arrFILTER" => array(),
               "arrWHERE" => array()
          )
     );
echo '
';
 
// перезапись данных
global $arrFilter;
$arrFilter = array();
$arrFilter["ID"] = array_values($arIDS);
$arResult["ITEMS_ID"] = array_values($arIDS);
$arResult["ITEMS"] = array_values($arIDS);
?>
 
После установки поисковой страницы таким способом внешний вид и функционал сохранятся. Дополнительные действия не требуются.
 
Если Вам необходима помощь в интеграции компонентов, обращайтесь в нашу техническую поддержку.
 
 

Нужна помощь в настройке решения

Оставьте заявку и мы свяжемся с вами!