Формы поиска
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
Формы поиска — это блоки с полем ввода и кнопкой отправки. Они передают запрос на страницу результатов поиска.
Для таких блоков в landing используется subtype: search с параметром type: form.
Что нужно для работы блока
Минимальный набор:
- тег
<form> - поле ввода для поискового запроса
- кнопка отправки формы
- атрибут
action, настроенный черезattrsдля формы
Пример описания атрибута формы:
'attrs' => [
'.landing-block-node-form' => [
'name' => 'Search result page',
'attribute' => 'action',
'type' => 'url',
'allowedTypes' => [
'landing',
],
'disableCustomURL' => true,
'disallowType' => true,
'disableBlocks' => true,
],
],
В штатных блоках атрибут action задается для селектора .landing-block-node-form.
Как работает subtype: search
Если в манифесте указать:
'block' => [
'subtype' => 'search',
'subtype_params' => [
'type' => 'form',
'resultPage' => 'search-result',
],
],
После добавления блока система:
- ищет на текущем сайте страницу с шаблоном
search-result - если страница найдена, подставляет ее в
action - если страницы нет, создает ее по шаблону и затем подставляет в
action
resultPage — код шаблона страницы результатов поиска. Подстановка выполняется в afterAdd, сразу после добавления блока.
Что важно учитывать
- подтип работает, когда в
subtype_paramsуказанtype: form - система ищет в манифесте атрибут с
type: urlиattribute: action - в штатных блоках для этого используется селектор
.landing-block-node-form - если
resultPageне указан, подтип не подставит страницу результатов автоматически - страница результатов ищется на текущем сайте по коду шаблона
TPL_CODE - при переносе конфигурации через
AppConfiguration::inProcess()подготовка манифеста не выполняется
Примеры штатных блоков
59.1.search59.2.search_sidebar59.3.search_dark
Чтобы форма поиска работала корректно, настройте атрибут action и укажите шаблон страницы результатов в resultPage.
Продолжите изучение
Скопировано
Предыдущая
Следующая