Pull to refresh

Бесплатные CMS для структурированных данных. Существуют?

Lumber room
А существуют ли среди бесплатных CMS такие, что позволяют создавать свои сложные типы данных, имеющие множество полей разных типов, и удобно ими оперировать?
Мой опыт далее.

Задача


Задавшись целью создать небольшой тематический портал, я спроектировал его модель и разделил все данные на несколько связанных между собой сущностей. Каждая из сущностей имеет несколько полей различных типов: текст, значение из списка, картинка, прикрепленный файл, дата, ссылка, ссылка на элемент того же или другого типа. Поля могут быть множественными. Такая структура позволяет удобно фильтровать данные и связывать их между собой.
Также было необходимо создать шаблоны для страниц списков, детальных страниц, блоков связанных элементов и блока фильтрации/сортировки для страниц списков.

Сформулировав эти свои потребности, я решил поискать CMS, подходящую для работы с такими данными. Упреждая вопрос «почему не написал сайт на фреймворке %крутой_известный_фреймворк%?» — потому что написание удобного backend`а для таких структур данных — занятие трудоемкое и непростое.

Что нужно было от CMS


  • Работа на PHP5 и MySQL 5;
  • Удобный интерфейс для создания собственных типов данных с разнообразными полями;
  • Широкий выбор полей различных типов. Даты, файлы, изображения, ссылки, привязки к другим элементам;
  • Возможность создавать шаблоны вручную с помощью html+css+js, используя в них плэйсхолдеры для подстановки данных из полей;
  • Задание отборов/сортировок по созданным полям данных;

Подбор


Я просмотрел большинство популярных бесплатных CMS на PHP: Drupal, Joomla, CMS Made Simple, MODx, DataLife Engine. Ни одна из них не удовлетворяла требованиям полностью. Как выяснилось, большинство из них в базовой комплектации вообще не дают возможности добавить собственные поля различным типам материалов и как-то работать с ними.

Ближе всех был, пожалуй, Drupal. В нем по крайней мере была поддержка пользовательских полей и возможность создавать собственные представления(views) со сложными условиями отбора/сортировки по ним (для этого правда пришлось собрать целый пакет модулей, CCK+Views+поля CCK).

Но даже тут было много неприятных моментов. Например, для поддержки различных типов полей пришлось качать много отдельных модулей. Почему весь этот функционал не был реализован непосредственно в CCK — для меня загадка. Также я пока не разобрался, можно ли редактировать шаблоны вручную, а не из административного интерфейса. Справка по Views утверждает что шаблоны типа normal хранятся в базе, а значит это вряд ли удастся.

Резюмируя


Ничего лучшего чем Drupal я пока не нашел, хоть мой прошлый отзыв о нем и был весьма нелестным. Может быть кому-то приходилось решать подобные задачи, и вы знаете удобные CMS для работы с такими структурами данных?
Tags:cmsdrupalструктуры данных
Hubs: Lumber room
Total votes 13: ↑9 and ↓4 +5
Views663

Popular right now

DBA | Администратор баз данных
from 200,000 to 300,000 ₽СберМосква
Data Scientist
from 70,000 to 120,000 ₽DDoS-GUARDРостов-на-ДонуRemote job
Data Scientist / ML engineer
from 140,000 to 180,000 ₽anonym.networkRemote job
Distributed Systems Engineer
from 8,000 $Cube.jsRemote job
Technical Lead, Cloud Platform
from 8,000 $Cube.jsRemote job