Музейний портал: розробка на 1С-Бітрікс
Музейний сайт — не просто вітрина. Це квиткова каса, каталог колекцій, віртуальні екскурсії та точка доступу для людей з обмеженнями. Ми спеціалізуємося на платформі 1С-Бітрікс, яка дозволяє об'єднати всі ці функції в одному проекті. За час роботи реалізували понад 15 музейних проектів — від художніх галерей до історичних комплексів. І знаємо, як уникнути типових помилок, які призводять до перепродажу квитків або повільного завантаження зображень. Оцінимо ваш проект за 1 день — просто зв'яжіться з нами.
Як 1С-Бітрікс вирішує завдання музейного сайту?
Платформа надає модулі iblock для каталогізації фондів та sale для продажу квитків. Доробки під музейну специфіку не вимагають переписування ядра — все вирішується через інфоблоки v2.0 та властивості. Гнучкість системи дозволяє реалізувати як просту афішу заходів, так і складний віртуальний тур з аудіогідами.
Каталог колекцій та експозицій
Фондова колекція може налічувати тисячі одиниць зберігання. Структура інфоблоку Collections проектується з урахуванням музейних стандартів:
-
PROPERTY_INVENTORY_NUM — інвентарний номер
-
PROPERTY_AUTHOR — автор (прив'язка до інфоблоку Persons)
-
PROPERTY_DATING — датування (рядок: «XV століття», «1890-ті»)
-
PROPERTY_TECHNIQUE — техніка/матеріал (множинний довідник)
-
PROPERTY_DIMENSIONS — розміри (рядок: «120×80 см, полотно»)
-
PROPERTY_COLLECTION — належність до колекції (прив'язка)
-
PROPERTY_HALL — зал експозиції (прив'язка до інфоблоку Halls)
-
PROPERTY_HI_RES_PHOTO — фото високої роздільної здатності (файл)
-
PROPERTY_AUDIO_GUIDE — аудіоопис (файл MP3)
Для фотографій налаштовується модуль обробки зображень: при завантаженні генеруються чотири варіанти — прев'ю 300px для списку, середнє 800px для картки, велике 2000px для зуму та watermarked-версія для захисту. Watermark накладається через обробник OnFileSave. Пошук по колекції реалізується через search з фасетними фільтрами: за епохою, технікою, автором, залом. Для повнотекстового пошуку підключається Elasticsearch через кастомний SearchProvider — штатний пошук Бітрікс не справляється з обсягами музейних описів. Для синхронізації з музейною системою обліку використовується стандарт CommerceML.
Чому віртуальні тури підвищують відвідуваність?
Віртуальні екскурсії збільшують залученість у 2 рази порівняно зі звичайними фотографіями. Ми реалізуємо 360° панорами залів з точками інтересу (hotspots). Використовуються бібліотеки Pannellum (open source) або Marzipano. Панорами зберігаються в інфоблоці VirtualTours із властивостями: файл панорами, JSON hotspots, пов'язані панорами, аудіотрек. Hotspots бувають трьох типів:
-
info — відкриває картку експоната
-
scene — перехід в інший зал
-
audio — запуск аудіогіда
Редагування hotspots реалізується через кастомний адміністративний інтерфейс: менеджер клацає на точку та заповнює властивості. Аудіогіди завантажуються в MP3 з автоматичною конвертацією в AAC через FFmpeg. Для детального розгляду експонатів підключається OpenSeadragon з технологією Deep Zoom: вихідне фото (50–100 Мп) нарізається на тайли утилітою vips dzsave. Тайли зберігаються на окремому домені cdn.museum-site.ru або S3-сумісному сховищі.
Як уникнути перепродажу квитків?
Модуль sale адаптується під квиткову специфіку. Квиток — це товар із властивостями:
| Властивість товару |
Призначення |
| Тип квитка |
Дорослий / Дитячий / Пільговий / Сімейний |
| Експозиція |
Постійна / Тимчасова виставка |
| Сеанс |
Дата + часовий слот |
| Ліміт |
Максимум відвідувачів на сеанс |
Ліміт відвідувачів — критична функція. При кожному продажу обробник OnSaleOrderAdd зменшує лічильник доступних місць для сеансу. Коли залишок досягає нуля, слот приховується. Лічильник зберігається в HL-блоці SessionSlots — це виключає проблеми конкурентного доступу. Для атомарності використовується UPDATE ... SET count = count - 1 WHERE count > 0. Пільгові категорії налаштовуються через правила корзини, покупець завантажує скан документа (поле ORDER_PROP типу «Файл»). Менеджер верифікує документ перед підтвердженням.
Афіша заходів
Інфоблок Events містить лекції, майстер-класи, концерти, ночі музеїв. Вивід на головній — компонент bitrix:news.list з фільтром >=DATE_ACTIVE_FROM та сортуванням за датою. Минулі заходи автоматично переходять в архів, але залишаються доступними за прямим посиланням для SEO. Для афіші генерується iCal-файл (.ics), який можна додати в календар.
Доступність (WCAG 2.1) та SEO
Музеї як державні установи зобов'язані забезпечувати доступність сайту. Ми реалізуємо WCAG 2.1 рівня AA: контрастність тексту не менше 4.5:1, навігація з клавіатури, обов'язкове поле alt для експонатів (перевіряється в OnBeforeIBlockElementUpdate), режим підвищеної контрастності (перемикач у шапці), масштабування тексту через rem. Для відео обов'язковий трек <track kind="captions">.
Для SEO застосовується розмітка Schema.org типу Museum з вкладеними об'єктами: ExhibitionEvent, Event, CreativeWork, Offer. Розмітка генерується автоматично через JsonLd-компонент, який збирає дані з інфоблоків. Шаблон розмітки налаштовується в адміністративному розділі — маркетолог може додати поля без участі розробника. Це дає приріст органічного трафіку до 30% за даними наших проектів. Наш багаторічний досвід гарантує високу якість та відповідність стандартам.
Що входить в роботу
- Проектування: прототип структури, узгодження функціоналу, технічне завдання.
- Дизайн: адаптивний інтерфейс, WCAG-шаблони, версія для слабозорих.
- Розробка: backend на 1С-Бітрікс, інтеграції з платіжними системами та касами, налаштування CDN.
- Наповнення контентом: імпорт з Excel/1С, завантаження зображень, аудіогідів, налаштування віртуальних турів.
- Тестування: перевірка квиткового сценарію, навантажувальне тестування (до 500 одночасних користувачів), аудит доступності.
- Супровід: навчання менеджерів, передача доступів, документація, 30 днів підтримки після запуску.
Терміни розробки по етапах
| Етап |
Термін |
| Проектування |
1–2 тижні |
| Дизайн |
2–4 тижні |
| Розробка |
4–8 тижнів |
| Наповнення контентом |
1–2 тижні |
| Тестування |
1 тиждень |
| Разом |
4–12 тижнів |
Часті помилки при розробці сайту музею
- Зберігання великих зображень без CDN — уповільнення завантаження в 3 рази.
- Відсутність атомарності при продажу квитків — ризик перепродажу місць.
- Ігнорування WCAG — штрафи до 2% від бюджету для держустанов.
Вартість та терміни
Терміни розробки — від 4 до 12 тижнів залежно від складності. Впровадження квиткової системи збільшує виручку від продажу квитків на 30% за рахунок динамічного ціноутворення. Вартість розраховується індивідуально після аудиту ваших вимог. Оцінимо проект за 1 день — отримайте комерційну пропозицію з детальним кошторисом. Отримайте консультацію по вашому проекту — ми розповімо, як мігрувати з застарілої системи або доопрацювати існуючий сайт. Зв'яжіться з нами для детального обговорення.
Як правильно проектувати інфоблоки?
Ми бачимо десятки проєктів, де неправильна структура інфоблоків перетворює сайт на гальмо. Типовий сценарій: замовник просить «каталог товарів». Розробник створює один інфоблок catalog, закидає туди 15 властивостей. Через півроку — 40 властивостей, 8 з яких використовуються лише для однієї категорії. Фільтр гальмує, таблиця b_iblock_element_property розрослася до мільйонів рядків, CIBlockElement::GetList виконується 3 секунди. Наслідки — падіння конверсії, втрата клієнтів, додаткові витрати на оптимізацію. В одному проєкті після рефакторингу каталогу час генерації сторінки знизився з 4,2 до 0,8 секунди, а вартість підтримки значно скоротилася — за рахунок усунення надлишкових запитів та агентів.
Наш підхід: проектуємо інфоблоки до першого рядка коду. Окремі інфоблоки під сутності (товари, категорії, бренди), властивості-довідники через HL-блоки, торгові пропозиції для SKU. Це закладає продуктивність на роки вперед. Якщо хочете отримати попередній аудит вашої схеми інфоблоків — зв'яжіться з нами, розберемо типові помилки та надамо рекомендації.
Чому 1С-Бітрікс вигідніший за альтернативи?
Вибір CMS диктується не уподобаннями, а бізнес-завданнями. Ось ключові аргументи:
- Нативний обмін з 1С — модуль
catalog.import.1c забезпечує двосторонній обмін товарами, цінами, залишками та замовленнями через CommerceML. Без сторонніх модулів. Це в 5 разів швидше, ніж розробка власного обміну на OpenCart або WordPress. Економія на інтеграції — до 200 000 грн порівняно з кастомними рішеннями.
- Проактивний захист — модуль
security включає WAF, контроль цілісності файлів, захист від SQL-ін'єкцій, двофакторну автентифікацію. Для проєктів з вимогами ФСТЭК — сертифіковане рішення (згідно з Wikipedia, це стандарт для корпоративних систем).
- Модульна архітектура — підключаємо лише потрібні модулі:
iblock, catalog, sale, search. Менше модулів — менше запитів до БД на кожен хіт.
- Регулярні патчі — вендор випускає security-патчі, закриваючи вразливості швидше, ніж open-source проєкти (середній час виправлення CVE — 2 тижні). Офіційна документація по модулях доступна на сайті розробника.
Що дають HL-блоки і як ми прискорюємо каталог
Highload-блоки — це альтернатива розширеним властивостям інфоблоків, коли список значень може зростати до тисяч записів. Типовий приклад: виробники, країни, кольори. Якщо зберігати їх як властивості-списки в інфоблоці, кожна фільтрація викликає повне сканування таблиці b_iblock_property_enum. З HL-блоками вибірка йде по індексу — час відповіді фільтра знижується з 1–2 секунд до 50 мс. Продуктивність HL-блоків у 8 разів вища за властивості-списки інфоблоків. Ми використовуємо HLB компонент і кастомні запити через Bitrix\Highloadblock\DataManager. Це особливо критично для каталогів з 100 000+ товарами.
З нашої практики — проєкт інтернет-магазину з 500 000 товарів. Стандартний фільтр по бренду виконувався 4 секунди. Сервер не витримував навантаження в 50 одночасних запитів — сторінки падали. Ми перевели довідник брендів у HL-блок, додали теговане кешування на 15 хвилин і налаштували агент для скидання кешу при зміні. Після доопрацювання час фільтрації склав 120 мс, середній LCP сторінки — 1,8 секунди. Проєкт працює стабільно без збоїв.
Що входить у розробку сайту на 1С-Бітрікс
Кожен проєкт включає повний комплект документації та артефактів, що виключає втрату знань після передачі.
- Технічне завдання — user stories, діаграми інфоблоків, схеми інтеграцій.
- Вихідний код у Git — з історією комітів, тегами релізів, правилами гілкування.
- Адміністративна документація — опис кастомних компонентів, інструкції з розгортання, перелік агентів і подій.
- Навчання співробітників — до 3 годин вебінару: панель управління, робота з замовленнями, налаштування цін. Записуємо, щоб можна було переглянути.
- Доступ до staging на час розробки — тестуєте самостійно до деплою на продуктив.
- Гарантійна підтримка — виправлення помилок коду протягом 30 днів після запуску. Післягарантійні абонентські пакети з SLA (реакція 2 години, рішення 8 годин).
Наш процес і технології
| Тип проєкту |
Терміни |
Складність |
Ключові особливості |
| Корпоративний сайт |
від 1 місяця |
Середня |
Каталог, новини, форми, CRM-інтеграція |
| Інтернет-магазин |
від 2 місяців |
Висока |
54-ФЗ, маркетплейси, обмін з 1С, SKU |
| B2B-портал |
від 3 місяців |
Дуже висока |
Персональні ціни, документообіг, Bizproc |
| Лендінг |
від 2 тижнів |
Низька |
LCP < 2с, композитний кеш, статика |
| Багатосайтова структура |
від 1,5 місяців |
Висока |
Роздільний контент, спільний каталог, hreflang |
Стек: верстка mobile-first, тестуємо на фізичних пристроях (iPhone, iPad, Android). Використовуємо BrowserStack для Safari на iOS. Продуктивність — LCP < 2,5 с, FID < 100 мс, CLS < 0,1. Включаємо композитний сайт (composite), CDN, теговане кешування, WebP/AVIF, lazy loading. SEO — Schema.org через JSON-LD, автогенерація sitemap.xml модулем seo, canonical і hreflang для мультимовних версій. robots.txt закриваємо /bitrix/ від індексації. CI/CD — Git, автодеплой через GitLab CI, staging. Міграції бази — модуль sprint.migration з версіонуванням.
Процес роботи:
- Аналітика — вивчаємо конкурентів, збираємо вимоги, малюємо прототипи в Figma. На виході — ТЗ з user stories.
- Дизайн — UI/UX з дизайн-системою. Компоненти перевикористовуються.
- Розробка — пишемо компоненти з кастомними шаблонами в
local/templates/. Бізнес-логіку виносимо в модулі local/modules/.
- Тестування — функціональне, кросбраузерне, навантажувальне (до 1000 запитів). Критичні баги виправляємо до запуску.
- Запуск — деплой на прод, моніторинг через UptimeRobot, алерти в Telegram. Усуваємо перші 48 годин.
Інтеграції, мультимовність і редизайн
| Напрямок |
Сервіси |
| CRM та аналітика |
Бітрікс24 (нативна), amoCRM, Roistat, Calltouch, Mindbox |
| Платежі |
ЮKassa, CloudPayments, Тінькофф, Apple Pay, Google Pay |
| Фіскалізація 54-ФЗ |
АТОЛ, OrangeData — налаштування через sale.cashbox |
| Логістика |
СДЕК, Boxberry, ПЕК, Укрпошта, Яндекс.Доставка |
| Комунікації |
JivoSite, Carrot Quest, SendPulse |
-
Повна локалізація через мовні файли lang/ і механізм SITE_ID. hreflang для кожної версії. Регіональні версії з різними цінами та контентом — визначення за IP (main.geo) або ручний вибір. Мультидоменність — єдине управління кількома доменами.
-
Редизайн без втрати позицій: аудит продуктивності (PageSpeed, WebPageTest), SEO (Screaming Frog). Новий шаблон у local/templates/ із збереженням URL-структури. 301-редиректи лише якщо URL змінюється суттєво. Оновлення ядра, перехід на D7 ORM, реструктуризація інфоблоків, міграція через sprint.migration з Git.
Типові помилки при проектуванні інфоблоків
- Один інфоблок на всі сутності замість окремих під товари, категорії, бренди.
- Використання властивостей-списків замість HL-блоків для довідників з великою кількістю записів.
- Відсутність індексів на полях, що використовуються у фільтрації каталогу.
- Нехтування тегованим кешуванням — призводить до скидання всього кешу при зміні одного елемента.
Гарантія та підтримка
Ми працюємо з 1С-Бітрікс 12+ років, реалізували 500+ проєктів. У штаті сертифіковані розробники. Фіксована вартість у договорі — без сюрпризів. Гарантійний період покриває помилки коду. Після — абонентські пакети з SLA (час реакції — 2 години, рішення — 8 годин). Моніторинг доступності 24/7, алерти в Telegram. За потреби отримайте попередній аудит — зв'яжіться з нами через форму на сайті або напишіть у чат, відповімо протягом години. Замовте розробку під ключ — ми спроєктуємо інфоблоки, інтегруємо 1С і розженимо каталог. Якщо вже є сайт на іншій CMS — замовте аудит продуктивності та міграцію на Бітрікс.