Настройка блога на 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка блога на 1С-Битрикс
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1181
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    813
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка блога на 1С-Битрикс

Модуль блога в Битрикс (blog) — одна из старейших подсистем, существующая с ранних версий. Он хранит посты в таблице b_blog_post, комментарии в b_blog_comment, а сами блоги — в b_blog. Модуль рабочий, но в типовых проектах блог чаще реализуют на инфоблоках: это проще в настройке, гибче в кастомизации и привычнее разработчикам. Разберём оба варианта и типичные задачи при настройке.

Модуль blog vs. инфоблок

Модуль blog предоставляет готовые компоненты: blog.post.list, blog.post.view, blog.post.edit, blog.post.comment. Из коробки — авторство, теги, комментарии с модерацией, RSS. Минусы: устаревший интерфейс редактирования, жёсткая структура, сложность кастомизации шаблонов.

Инфоблок — создаём информационный блок «Блог» с типом content. Свойства: PREVIEW_PICTURE, DETAIL_PICTURE, PREVIEW_TEXT, DETAIL_TEXT, TAGS (строка или привязка к справочнику), AUTHOR (привязка к пользователю), READ_TIME (число, минуты на чтение). Разделы инфоблока — рубрики блога.

Вывод — через стандартные news.list и news.detail с кастомными шаблонами. Комментарии — через отдельный модуль (Forum, сторонний сервис типа Disqus) или кастомную реализацию на инфоблоке.

Для большинства корпоративных сайтов инфоблок — правильный выбор. Модуль blog оправдан, если нужны мультиавторские блоги с самостоятельной публикацией (каждый пользователь ведёт свой блог).

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

Создаём инфоблок в разделе Контент → Инфоблоки. Тип — content (или отдельный тип blog). API-код — blog. Привязка к сайту обязательна.

В URL-шаблонах задаём ЧПУ:

  • Список: /blog/
  • Раздел (рубрика): /blog/#SECTION_CODE#/
  • Детальная страница: /blog/#SECTION_CODE#/#ELEMENT_CODE#/

Код раздела и элемента задаётся при создании. Для SEO используем транслитерацию: включаем в настройках инфоблока Транслитерировать символьный код из названия при добавлении элемента.

Компоненты для публичной части:

  • bitrix:news — комплексный компонент, объединяющий список и детальную страницу. Или раздельно: news.list + news.detail — удобнее при сложных шаблонах.
  • Постраничная навигация — параметр NAV_TEMPLATE компонента.
  • Фильтрация по тегам — через FILTER_NAME с передачей GET-параметра.

SEO-настройки

Для каждого элемента блога важны: title, description, канонический URL. В настройках инфоблока задаём шаблоны SEO-полей:

  • Шаблон META TITLE: {=this.Name} | Блог компании
  • Шаблон META DESCRIPTION: {=this.PreviewText}

Для OpenGraph-тегов (og:title, og:image, og:description) используем $APPLICATION->SetPageProperty() в шаблоне news.detail или через свойства элемента.

Sitemap — добавляем раздел блога в настройки модуля SEO (Маркетинг → SEO → Карта сайта). Указываем инфоблок и периодичность обновления.

Кэширование

Компоненты news.list и news.detail кэшируются штатно через параметр CACHE_TIME. Для блога с редкими публикациями ставим 3600 секунд. При добавлении нового поста кэш списка сбрасывается автоматически через тегированный кэш — Битрикс добавляет тег iblock_id_{N} при выборке из инфоблока.

Composite cache — блог обычно не содержит персонализированных данных (кроме комментариев), поэтому страницы кэшируются целиком. Блок комментариев выносим в динамическую область через \Bitrix\Main\Page\Frame.

Частые доработки

Время чтения — вычисляется при сохранении элемента. Обработчик OnAfterIBlockElementUpdate считает слова в DETAIL_TEXT и делит на 200 (средняя скорость чтения). Результат пишем в свойство READ_TIME.

Связанные статьи — свойство типа «Привязка к элементам» или автоматический подбор по совпадению тегов. Выводим в шаблоне news.detail через дополнительный news.list с фильтром по тегам текущей статьи.

Подписка на новые статьи — через почтовые рассылки модуля sender или интеграцию с внешним сервисом рассылок.