Яку CMS вибрати для сайту?

Вибір CMS, системи керування вмістом сайту — відповідальне питання. Від цього рішення залежить і первісна вартість сайту, який створюється, і вартість його обслуговування, і можливості для подальшого розвитку вашого сайту.

На основі нашого майже двадцятирічного досвіду роботи з різними CMS сайтів і движками інтернет-магазинів, ми можемо зробити декілька висновків, які допоможуть вам не помилитися при виборі CMS.

Правило номер 1. Залізне.

Не пишіть сайт «з нуля». Використовуйте одну з готових і поширених CMS. У більшості випадків підійде WordPress або Drupal.

Зараз існує величезна кількість всіляких CMS. Серед веб-розробників навіть гуляє жарт, що кожна веб-студія зобов’язана написати свою CMS. Друга частина жарту, яка мається на увазі, але зазвичай не вимовляється — що розробка власної CMS в переважній більшості випадків закидається. Часто — разом з сайтами клієнтів.

Навіщо веб-розробники пишуть нові CMS? Причини прості і зрозумілі: тому що не подобається, як зроблено у інших і хочеться спробувати самому зробити краще.

А чому ці саморобні CMS закидаються? Через невірної оцінки складності і масштабності задачі розробки CMS.

Подивіться на зміну розмірів коду найпопулярніших CMS в світі по мірі їх вдосконалення.

Ми завантажили з офіційних сайтів WordPress и Drupal найраніші і найпізніші версії цих CMS.

Як еталон розміру тексту ми взяли чотиритомник Льва Толстого «Війна і мир» в форматі .txt. Завантажити його можна тут.

Розмір однієї сторінки «Війни і миру» — 2,3548 кілобайт. Порахуємо, скільки сторінок займає код популярних CMS, якщо його роздрукувати у вигляді книги.

Твір Розмір в Мб Розмір в сторінках
Лев Толстой. «Війна і мир» 3 Мб 1 274 стор.
WordPress 0.71
найраніша1 версія
0,7 Мб 282 стор.
WordPress 4.7.5
найпізніша2 версія
24,1 Мб 10 252 стор.
Drupal 4.0.0
найраніша1 версія
0,9 Мб 385 стор.
Drupal 7.54
найпоширеніша2 версія
13 Мб 5 638 стор.
Drupal 8.3.2
найпізніша2 версія
70,7 Мб 30 052 стор.

1 — з доступних на офіційному сайті
2 — на момент написання статті

Код WordPress за час розробки збільшився в 34 рази і став в 8 разів «товще» чотиритомника Льва Толстого.

Код Drupal розрісся в 78 разів і став як 23 «Війни і миру».

Ось приблизно такий масштаб помилки при оцінці складності розробки якісної сучасної CMS з нуля. Помилки, яку роблять веб-розробники з шапкозакідательнимі настроями.

Ми цю помилку теж робили.

Власне, для веб-розробника або веб-студії це не стільки помилка, скільки цікавий і корисний досвід. Але для замовника сайту це означає, що хтось буде тренуватися на ньому і вчитися за його рахунок.

Ще один найважливіший момент — те, що використання поширеною CMS автоматично гарантує вам, що в разі потреби ви зможете знайти інших розробників, здатних підтримати ваш проект. У разі використання самопісний CMS ви власними руками приковували себе до авторів цієї CMS.

Правило № 2: не використовуйте Joomla і Bitrix

Причина не стільки в якості коду цих CMS (це досить складне і багато в чому суб’єктивне питання), скільки в специфіці спільнот розробників обох систем.

Joomla — друга за поширеністю CMS в світі, після WordPress і перед Drupal. Bitrix — перша за популярністю в Росії. (В принципі, цього вже має бути достатньо, щоб підприємства та організації в Україні не мали справ з Bitrix, але у нас є ще і прагматичні аргументи).

Чому ж ми не рекомендуємо ці популярні CMS?

Joomla

Joomla виглядає симпатично, в адмінці великі красиві кольорові кнопки. Багато можливостей, багато модулів (екстеншенов), є локалізація на російську та українську. Можна робити і сайти, і інтернет-магазини.

Це причини, за якими Joomla вибирається веб-розробниками, що починають.

Але якщо порівняти Joomla з WordPress, то виявиться, що Joomla складніше, ніж WordPress, і має гірший інтерфейс адмінки — менш зрозумілий і зручний для власника сайту або контент-менеджера. А в порівнянні з Drupal у Joomla набагато менше можливостей в силу того, що Drupal — це платформа, яка об'єднує в собі можливості «коробкової» CMS та гнучкість програмістського фреймворка.

Тому, якщо ви виберете Joomla, то ви виберете компроміс між простим, легким і зрозумілим WordPress та складним, але потужним і гнучким Drupal. А компроміс — це коли ніхто не виграє.

Bitrix

Бітрікс ми розглядаємо в цій статті лише тому, що він популярний в російськомовному інтернеті. І популярний він там тому, що його агресивно просуває компанія 1С, власник 1С-Бухгалтерія та Бітрікс.

Головна відмінність Бітрікс від інших CMS — він платний. Ніяких особливих переваг це не дає, тому що для налаштування сайту на Бітрікс вам все одно доведеться звертатися до сторонніх веб-розробникам, які також, як і в разі використання інших CMS, порахують вам вартість робіт виходячи з погодинного рейту.

Те ж саме з модулями, які розширюють можливості CMS. Для Drupal практично всі модулі — безкоштовні. Для Бітрікс — 50/50. За кращі модулі доведеться платити, і часто відчутні суми.

Разом: якщо ви виберете Бітрікс, то ви виберете більшу дорожнечу вашого проекту та залежність від Росії.

Правило № 3: визначте ступінь унікальності вашого сайту

Під унікальністю мається на увазі, зрозуміло, не зовнішній вигляд сайту. Цікавий, оригінальний, ні на кого не схожий дизайн можна реалізувати на будь-який CMS. Це питання фронтенда і він не пов’язаний з особливостями конструкції CMS.

Під унікальністю ми маємо на увазі те, як буде працювати ваш сайт. Які можливості він буде надавати користувачам.

Наприклад, WordPress — це в першу чергу CMS для персональних блогів. Це його первісна ніша на ринку CMS, і саме за рахунок величезної кількості невеликих персональних блогів WordPress став такий популярний в світі.

Тому WordPress вміє відмінно управляти сайтами, що складаються з простих сторінок — записів у блозі, коментарів, фотогалерей, декількох додаткових сторінок типу «Про мене» і кількох специфічних функціональних блоків типу «Архів записів» або «Хмара тегів».

На основі цього навіть можна робити інтернет-магазини — просто тому, що до базових сторінок не так складно додати додаткові поля типу «Ціна» і додаткові блоки типу «Кошик».

Ну, як просто. Якщо подивитися на динаміку розростання кодової бази WordPress, яку ми навели вище, то вочевидь, що досить складно. Але все ж можна.

Але якщо ви хочете отримати сайт, який сильно відрізняється від набору простих сторінок, то потрібно думати або про більш гнучку CMS, таку, як Drupal, або про розробку на чистому фреймворку, наприклад, на Django.

І це різко збільшить вартість розробки сайту.

Правило № 4: використовуйте спеціалізовані рішення

Наприклад, якщо вам потрібен інтернет-магазин, то ви можете зробити його кількома різними способами:

  1. Якщо у вас невеликий особистий інтернет-магазин (скажімо, магазин хендмейду), то логічно буде позиціонувати його більш персонально — відштовхуючись від формату блогу. Тут чудово підійде як WordPress, так і Drupal.
  2. Якщо у вас планується досить великий інтернет-магазин, в якому кількість товарів обчислюється не одиницями і десятками артикулів, а сотнями і тисячами, то це означає необхідність серйозної автоматизації роботи інтернет-магазину. Починаючи з імпорту описів і цін товарів з таблиць і закінчуючи подіями, які налаштовуються і за якими магазин повинен самостійно виконувати певні дії (наприклад, при зміні статусу у товару «Поступив на склад» автоматично розсилати відповідний e-mail покупцям, які цікавилися цим товаром). Тут вже потрібно вибирати між Drupal Commerce з його багатими можливостями гнучкої настройки і спеціалізованими eCommerce рішеннями типу Magento.
  3. Якщо ви відчуваєте в собі амбіцію Амазону або AliExpress по завоюванню світу (і маєте в своєму розпорядженні бюджет, який відповідає масштабу амбіцій), то ретельно розпишіть технічне завдання — для початку достатньо у вигляді сценарію використання — і дивіться, що вам запропонують розробники. І обирайте той варіант, в якому є розумне поєднання нового коду і використання готових рішень. Наприклад, той же AliExpress для свого фронтенда використовує доступний кожному безкоштовний Bootstrap — і непогано заощаджує як на розробці, так і на тестуванні.

Підсумок

У студії «Зіна дизайн» ми не робимо сайти на WordPress, хоча і вважаємо його цілком розумним вибором для невеликих сайтів.

Ми робимо сайти на Drupal і на Python/Django. Для середніх і великих сайтів є ідеальним Drupal, для нестандартних проектів неперевершений Django.

Всі вони — безкоштовні. Грошей коштує лише робота фахівців. І для Drupal, і для Django знайти розробників — не проблема, тому що це якісні, давно відомі, добре документовані і популярні проекти.

Наші найкращі рекомендації :)

Дивіться також порівняння CMS в 2017 році на WebSiteSetup.org: WordPress vs. Joomla vs. Drupal (Full Comparison)