Налаштування розділу новин на 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Налаштування розділу новин на 1С-Бітрікс
Проста
~1 робочий день
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • 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
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Налаштування новостного розділу на 1С-Bitrix

Новостний розділ — один з перших, що налаштовують на свіжому Bitrix, і один з найчастіше зломаних. Типові проблеми: дублювання URL, кеш не скидається при публікації, зображення не відображаються у потрібному розмірі. Розберемо налаштування від інфоблока до пагінації.

Інфоблок новостей: обов'язкові настройки

Створіть інфоблок з типом news, символьний код news. Ключові параметри при створенні:

  • BIZPROC = N — бізнес-процеси для новостей надмірні, включення сповільнює запис
  • VERSION = 2 — зберігання властивостей у окремих таблицях (b_iblock_element_prop_s{id}), швидче для великих обсягів
  • INDEX_ELEMENT = Y, INDEX_SECTION = Y — для пошуку
  • DETAIL_PAGE_URL = /news/#ELEMENT_CODE#/ — URL детальної сторінки через символьний код, не ID

Символьний код (CODE у b_iblock_element) заповнюйте автоматично: у настройках інфоблока включіть TRANSLIT_AUTOFIELD_NAME = Y. Це генерує транслітерацію з назви новості при збереженні. Без цього редактори залишають поле пустим, і Bitrix падає в помилку 404 на детальних сторінках.

Властивості інфоблока для новостей:

  • SOURCE — джерело, тип Рядок
  • AUTHOR — автор, тип Прив'язка до користувача або просто Рядок
  • TAGS — теги, множественна Рядок (або вбудоване поле TAGS)

Компоненти: list та detail

Пара bitrix:news.list + bitrix:news.detail — стандарт. Розміщуйте через складний компонент bitrix:news або окремо.

Параметри bitrix:news.list, на які звернути увагу:

IBLOCK_TYPE = news
IBLOCK_ID = <id вашого інфоблока>
SORT_BY1 = ACTIVE_FROM
SORT_ORDER1 = DESC
CACHE_TYPE = A
CACHE_TIME = 3600
DISPLAY_DATE = Y
PAGER_SHOW = Y
PAGER_TEMPLATE = .default

Кеш CACHE_TIME = 3600 з автоматичною інвалідацією (CACHE_TYPE = A) — оптимально. При публікації новості через CIBlockElement::Add() або через адміністративний інтерфейс Bitrix автоматично скидає кеш компонента. Якщо цього не відбувається — перевіртье, що BXClearCache не відключений глобально у настройках кеширування.

У template.php списку стандартний набір виводу: $arItem["NAME"], $arItem["PREVIEW_TEXT"], $arItem["PREVIEW_PICTURE"], $arItem["DISPLAY_ACTIVE_FROM"]. Для зображень Bitrix зберігає оригінал у /upload/, а ресайзи генерує через CFile::ResizeImageGet() з записом у /upload/resize_cache/.

Пагінація та ЧПУ

Пагінація у bitrix:news.list працює через GET-параметр PAGEN_1 (або кастомне ім'я). Проблема: при індексації Google бачить /news/?PAGEN_1=2 як дублюючийся URL. Рішення: використовуйте шаблон пагінації з <link rel="next"> та <link rel="prev"> у <head> — додавайте їх у component_epilog.php.

Для ЧПУ-пагінації вигляду /news/page/2/ потрібна кастомізація: компонент не підтримує це з коробки, реалізується через urlRewrite.php або через переопределение шаблона навігації.

RSS-лента

Новостний розділ часто потребує RSS. Модуль rss у Bitrix — компонент bitrix:rss.export. Налаштовується аналогічно bitrix:news.list, генерує валідний RSS 2.0 або Atom. Підключається на окремій сторінці /news/rss.php з типом контенту application/xml.

При активному кешуванні RSS оновлюється з затримкою — встановлюйте CACHE_TIME для RSS-сторінки не більше 900 секунд або скидайте кеш при публікації через обробник події OnAfterIBlockElementAdd.

Автопубліцація та відкладені новості

Поля ACTIVE_FROM та ACTIVE_TO у b_iblock_element управляють часом публікації. Елемент з ACTIVE_FROM в майбутньому не відображається у компонентах при стандартній фільтрації. Для автопублікації у точний час потрібен агент (таблиця b_agent), який регулярно скидає кеш або перевіряє публікацію — стандартний агент CIBlockAgent::CheckDiskQuota не підходить, пишіть свій.