Правила создания структуры инфоблоков

Не надо плодить типы инфоблоков

Зачем создавать 18 типов инфоблоков и 18 инфоблоков, когда всё замечательно умещается и в одном. Старайтесь лишний раз не создавать новый тип ифнобоков, в основном будет достаточно пяти типов инфоблоков:

  • Каталог (Естественно сам каталог товаров, торговые предложения, Брэнды, Производители)

  • Новости и статьи (Сюда падают вся блоговая и новостная информация: Инструкции, Статьи, Новости, Блог, Выполненные работы,)

  • Галерея (Фотогалерея, Видеогалерея, Портфолио)

  • Материалы (В этом типе создаются инфоблоки которые не попадают ни под одно определение. Или прочий структурированный динамический контент.)

Если разрабатывается Многоязычный сайт, то лучше всего создать только типы инфобоков с названиями языков:

  • Информация для сайт RU

  • Информация для сайт EN

  • Информация для сайта GR

А уже внутри каждого типа инфоблока, создавать сами инфоблоки (Новости, статьи, Каталог, Баннеры).

Называть инфоблоки

Нужно по названию раздела, в котором он выводится. Например: Новости, Каталог товаров в магазине ТАКОМ-ТО, Выполненные проекты, Отзывы,

Часто бывает ситуация когда инфоблок содержит в себе информацию не для раздела на сайте, а всего лишь для одного блока или позиции в шаблоне. Тогда называть инфоблок нужно по принципу: название функционала на сайте - находятся в разделе. Например: Баннер на главной странице, Слайдер на главной странице, Преимущества на странице О компании.

Настройки инфоблока

После создания Инфоблок всегда необходимо настраивать его под функционал, для которого он рассчитан.

  • Символьный код - Обязательный для заполнения, называть только по английски прямым переводом названия инфоблока, маленькими буквами.

  • URL страницы информационного блока, URL страницы раздела, URL страницы детального просмотра - Обязательно к заполнению, если инфоблок отвечает за хранение информации целого раздела. Многие сейчас подумали: "Это можно настроить в компоненте". И частично будут правы, правила формирование URL нужно настраивать и там и там. Если не заполнить правила формирования URL в настройках инфоблока, то может получится, что вам нужно получить ссылку на товар в корзине, как это сделать? если в настройках инфоблока "каталог" не указано правило формирование ссылки для элемента, а компонент каталога не подключен на странице корзины.

  • Индексировать разделы для модуля поиска и Индексировать элементы для модуля поиска - обязательно для проверки. Нужно чётко понимать, нужны ли вам элементы инфоблока в общем поиске на сайте?

  • Режим просмотра разделов и элементов - Обычно используется "совместный" режим, так намного проще представлять настоящую иерархию. Но на для больших и объёмных каталогов товаров желательно использовать режим "Раздельный". Бонус: Задать значение для всех ново создаваемых инфоблоков можно в настройках > настройки продукта > настройки модулей > информационные блоки > совместный просмотр разделов и элементов.

Стандартные поля инфоблока

Тоже можно расширять и настраивать. Почти каждое поле инфоблока можно сделать обязательным для заполнения, но с этим не стоит сильно заигрываться. Делать поле обязательным для заполнения нужно только, если вы знаете, что без заполненного поля всё сломается (например символьный код).

  • Привязка к разделу нужна, только тогда, когда вам нужно выстраивать информацию в иерархическую структуру (Каталог, иногда новости и блог).

  • Начало активности - если вы создаёте инфоблок новостей, и вам будет нужна дата публикации новости для вывода. То во первых его нужно поставить обязательным, а во вторых выбрать параметр "Текущая дата и время" или "Текущая дата". Это позволит пользователю в дальнейшем экономить время на поиск нужной даты.

  • Картинка для анонса и Детальная картинка - не использовать для маленькой и большой картинки. Так вы просто дублируете информацию на сайте. Если вам нужна маленькая картинка в списке элементов. Для этого есть методы ResizeImageGet и ResizeImageFile.

  • Тип для анонса и детального описания - Обязательно проверяйте данный параметр и ставьте HTML, обычно это всегда прокатывает. Но бывают случаи когда вам нужно, чтобы пользователь не запорол вёрстку. Вот только тогда ставьте параметр "TEXT" и до кучи снять чекбокс с параметра "Разрешить переключаться между text и html".

  • Символьный код - Обязательно к заполнению, если вы используете ифноблок для вывода каталога или новостей. Обязательны параметры "Если код задан, то проверять на уникальность" и "Транслитерировать из названия при добавлении элемента". А вот параметр "Использовать внешний сервис для перевода" Нужен только на многоязычных сайтах, этот параметр позволяет в автоматическом режиме переводить названия элемента в нормальный английски URL(для русских сайтов это мало пригодно). Чтобы перевод заработал, нужно в настройках > настройки продукта > настройки модулей > Главный модуль > Внешние сервисы перевода. Добавить ключ для перевода. Получить ключ можно тут.

Свойства инфобоков помогает расширить стандартный функционал, но многие разработчики понимают это слишком буквально. Старайтесь использовать по максимуму стандартный набор полей и создавать свойства только в крайней необходимости.

При создании свойства важно:

  • Задавать код свойства только БОЛЬШИМИ БУКВАМИ, без_пробелов_заменя_на_нижнее_подчёркивание, И только по IN_ENGLISH.

  • Определить является ли свойство множественным? Например свойство "файлы для скачивания" должно быть множественным, так как сформулировано в множественном числе.

  • Сортировка свойства - все свойства которые являются для вас техническими (не видимы на Front end) должны иметь сортировку <= 499. Вы поймёте зачем это когда у вас в каталоге будут свойства "НДС", "Реквизиты", "Показывать на главной". На детальной странице каталога товаров легче вывести свойства товара по фильтру if($value['SORT'] > 500. Чем потом во время поддержки проекта, каждое новое свойство добавлять вручную в настройках компонента bitrix:catalog.

При создании инфоблок по умолчанию закрыт для просмотра в Front end. Не забывай настраивать права доступа на инфоблок!

При создании инфоблока, всегда включать всё журналирование!

Дополнительная настройка для журналирвоания действий с инфобоками находится в настройках > настройки продукта > настройки модулей > информационные блоки > Журналировать действия с инфоблоками.

Настройка формы редактирования Элемента инфоблока.

Не забывайте, что именно Вы (разработчики) задаёте общий тренд и показываете простоту обращения с Битиркс для будущих пользователей. После создания инфоблока, не забудьте настроить внешний вид редактирования элемента инфоблока. Удалите все лишние вкладки и поля, которые не будут использованы. После того как вы отредактировали форму необходимо установить параметр "Установить данные настройки по умолчанию для всех пользователей", чтобы изменения примерились ко всем пользователям.

BR или P?

Любой верстальщик скажет конечно же P и будет прав! Самая печальна оплошность которая может случится с разработчиком, это когда он заполнил весь сайт, а после ему говорят, что заполнил не правильно! Нужны Абзацы P, а не BR. Хотя у разработчика не было злого умысла чтобы так сильно подпортить самому себе же жизнь! Чтобы такого не происходило с вами, нужно убрать всего один параметр в настройках > настройки продукта > настройки модулей > Управление структурой > Визуальный редактор > Автоматически заменять переводы строки на <BR> при переключении режимов "Текст/HTML/Визуальный редактор"

Удаляй за собой весь мусор.

После того как всё сделано, не забывай удалить все тестовые и устаревшие, инфоблоки и элементы.

Добавляй и используй Снипеты.

Иногда в вёрстке попадаются украшательные элементы HTML типа <blockquote></blockquote> или <div class="gray-block inform"></div>. Таких элементов нет в стандартном редакторе битрикс. Но чтобы пользователь их мог использовать в последствии нужно добавлять Снипеты. И если перед вами стоит задача, что бы сделать раздел с новостями, без снипетов задача будет считаться не завершённой--Кирилл Вихарев 17.10.2017 12:44:12

Last updated