Конструкторы контента (Content Construction Kit) и их обзор для Joomla: K2, Zoo, Cobalt 7, Seblod.

Source: Обзор конструкторов контента (Content Construction Kit) для CMS Joomla

Ликбез

В каждой CMS имеется несколько фиксированных форм контента, основной из которых является материал (статья). Эта форма обладает строгим набором полей и опций таких, как например, заголовок, описание, дата публикации, автор, состояние, и.т.д. Все это позволяет максимально удобно создавать статьи, но давайте на секунду задумаемся, а что если нам нужна немного другая форма контента?

Например, нам нужно, чтобы в статьях была также возможность указывать теги? Что делать? Идем искать расширение. А если нам нужна форма комментариев к статьям? Что делать? Идем искать расширение. А что, если нам нужны несколько форм обратной связи с различными полями для заполнения? Что делать? Идем искать расширение. Таким образом может накопиться масса расширений, после установки которых CMS зачастую превращается в глючного монстра, ведь всем этим нужно не только управлять, но и обновлять и следить за уязвимостями.

Типичный случай CMS Joomla, которую первоначально выбирают за простоту (легкое освоение админки) и функциональность (огромное количество расширений и шаблонов). Что же делать? Использовать конструкторы контента!

Content Construction Kit (CCK) — система создания контента или дословно: набор конструирования контента. Конструкторы контента представляют собой расширения CMS, которые позволяют очень гибко управлять материалами на сайте, создавать различные типы контента (такой контент, который нам нужен). После этого мы можем создавать сколько угодно экземпляров созданного типа контента, выражаясь терминологией ООП.

Почему разработчики выбирают CCK, ведь можно дописать требуемый функционал самому? Причины банальны: лень и, в некоторых случаях, боязнь hard-кодинга. Ведь гораздо проще получить результат в пару кликов, за что так любят Drupal с уже встроенным (начиная с 7-ой версии) модулем CCK.

Обзор конструкторов контента

Впервые термин CCK возник судя по всему применительно к CMS Drupal. Для Drupal 6 модуль CCK и модуль Views являются основными устанавливаемыми программистом модулями, сразу после установки самой CMS. В Drupal 7 CCK и Views являются частью ядра. Без них Drupal вряд ли был тем, за что его так холят и лелеют (любят и нахваливают).
Заметка: в Drupal 7 модуль CCK стал называться Fields.

В вечном споре Joomla против Drupal, приверженцы последней обычно приводят простой аргумент, цитирую: «А попробуйте сделать на Joomla сайт с различными типами контента! Не просто статейный сайт, а, например, каталог со множеством дополнительных полей. А слабо организовать поиск по такому каталогу, и не просто поиск, а поиск по любым полям, мультипоиск и т.д?».

Да, действительно, на базовой Joomla такого не сделаешь. На данный момент Joomla не доросла до собственного CCK, но существуют сторонние расширения. Рассмотрим самые известные из них.

Продукт Описание

YooZOO


Поддерживает Joomla 1.5, 1.7, 2.5
http://www.yootheme.com/zoo

Плюсы:
Достаточно гибкий и мощный конструктор контента для Joomla. Удобен в использовании, т.к. имеет хороший визуальный интерфейс для управления полями (с ajax и drug and drop).Минусы:
Нет интеграции с com_content. С фильтрацией контента дела обстоят тоже не очень хорошо. В бесплатной версии только 2 готовых приложения «blog» и «pages», другие приложения доступны за деньги, но самостоятельно реализовать их аналоги не составит труда.

K2


Поддерживает Joomla 1.5, 1.7, 2.5
http://getk2.org

Плюсы:
Также, очень популярная CCK-система. Для неё существует очень много модулей и плагинов, её поддерживает большое сообщество. Простая для понимая, но не такая гибкая как хотелось бы.Минусы:
Работа с полями в конструктора, на мой взгляд, не удобна. Нет интерфейса для визуального редактирования шаблонов вывода контента.
Компонент существует отдельно от стандартного джумловского com_content. С фильтрацией материалов у него всё плохо, в стандартном варианте её просто нет; есть платные модули, что устроит не многих.

FLEXIcontent


Есть поддержка только версии Joomla 1.5
http://flexicontent.org

Распространён довольно мало, поэтому думаю, что для новых версий Joomla он появится не скоро, если вообще появится. Интерфейс административной панели выполнен довольно симпатично. Есть фильтры, и тут они работают вполне приемлемо.
На чистоту — компонент очень устарел и очевидно, что автор забросил его разработку. Но я все же включил его в обзор, лишь потому что он хранит данные в таблицах com_content, но вывод все равно осуществляет через свой компонент com_flexicontent, из-за чего многие плагины не всегда его понимают и косячат, тоже относится и к модулям.

MightyResources


Поддерживает только Joomla 1.5
http://www.mightyextensions.com/joomla-components/resources-cck-custom-content-types

Плюсы:
Более гибкий конструктор контента по сравнению с К2. Удобная работа с полями. Очень много параметров для настроек визуального вывода контента.Минусы:
Если нужны дополнительные шаблоны оформления материалов, придется покупать платную лицензию, причем дизайн этих шаблонов оставляет желать лучшего. При работе с компонентом много багов и вытекающей из этого возни с настройками; много лишнего в стандартном выводе, который приходиться чистить. Фильтры работают по-дурацки. Опять же, нет интеграции со стандартным компонентом com_content.Замечание: Конструктор MightyResources устарел и был переписан с образованием нового продукта Cobalt 7 (см. далее).

Cobalt 7


Joomla 1.7 – 2.5
http://www.mintjoomla.com/joomla-components/cobalt.html

Cobalt — это 7-е поколение конструкторов контента для Joomla, пришедший на замену JoomSuite Content, а затем Mighty Resources.
Опробовать данный компонент на деле мне не довелось, поэтому приведу перевод рекламы с оффициального сайта.
Cobalt использует самые передовые технологии:

  • Поддержка HTML5, CSS3, AJAX.
  • Улучшена скорость работы за счет оптимизации структуры БД и оптимизации запросов.
  • Расширенный поиск и фильтрация.
  • Наличие макета контента, позволяющего располагать поля в различных его секция.
  • Более 35 полей для работы с контентом.
  • Возможность добавлять ограничения для пользователей и групп. Можно даже назначать модераторов контента.
  • Система уведомлений пользователей об изменениях контента, включая комментарии к контенту.
  • Система рейтинга контента.
  • Поддержка QR-кодов и Google maps (видимо имеются ввиду поля с QR-кодами и с гео-картами).
  • Система шаблонов для оформления контента.
  • Прочие функции.

Как видите — список впечатляет. Насчет интеграции с com_content ничего не сказано, нужно будет проверить (не может же быть что они проделали такую огромную работу, не исправив этот существенный недочет).

Seblod


Joomla 1.5, 1.7, 2.5
http://seblod.com

Плюсы:
Пожалуй самый мощный и самый гибкий компонент CCK для Joomla. Самый большой его плюс — это полная интеграция с системой Joomla, с категориями, материалами, пользователями, ролями пользователей, шаблонами. Гибкая настройка списков, таблиц, материалов. Можно вообще отказаться от использования сторонних модулей вывода и использовать только листинги Seblod. Легко переносить приложения созданные в Seblodмежду разными проектами. Отлично реализованы фильтры. Полностью бесплатный.Минусы:
Сложен в изучении. Очень мало документации по нему, и распространён он значительно меньше чем K2 или ZOOв силу сложности.Заметка:
Установить Seblod на Joomla можно за пару кликов. Удалить – гораздо сложнее. Слишком глубока его интеграция в Joomla. Поэтому, не устанавливаете Seblod на рабочие проекты просто, чтобы посмотреть его! Потом замучаетесь удалять. Тестируем компонент только на тестовом сервере! В прочем, это относится к любому вновь устанавливаемому компоненту.

Итак, только часть из рассмотренных CCK-систем для Joomla интегрируется с com_content ядра, остальные используют свои таблицы для содержимого и по этой причине не совместимы с существующими плагинами и модулями Joomla. Среди тех компонентов CCK, что интегрируются с com_content, не все делают это на 100% успешно (я про FlexiContent).
Немаловажно также, что некоторые конструкторы имеют платные расширения, без которых решение некоторых задач может затрудниться.

Актуальными конструкторами контента для Joomla на сегодняшний день являются K2, Zoo, Cobalt 7 и Seblod.

Но настоящим конструктором контента из них является только Seblod — полнеценное расширение системы контента Joomla. Самый мощный из них, из-за чего сложен в освоении.

K2 и Zoo представляют из себя некое подобие конструкторов контента, потому что замкнуты на самих себе. Что это значит? Эти расширения при установке создают в базе данных собственные таблицы и только с ними и работают. Например, у К2 свои таблицы для статей, дополнительных полей и прочего. На них и замкнут весь компонент. При этом вся мощь расширений Joomla, созданных для работы с таблицами контента именно Joomla, а не K2, становится бессмысленной. Именно поэтому, используя K2 и аналоги мы получаем массу проблем с интеграцией других расширений. В Интернете форумы кишат вопросами вроде «Как интегрировать K2 с ххххx?». То же самое и с Zoo.

Что касается Cobalt 7, как я уже сказал: проверить функциональность, юзабилити и интеграцию с Joomla com_content я не успел. Но судя по всему это очень многообещающий конструктор контента.

Вечное противостояние или опять разжигаем Холивар

Вернемся к противостоянию Joomla vs Drupal. Если отбросить тему кеширования, темизации и пр., то становиться совершенно очевидно, что подобное сравнение совершенно бессмысленно. Потому как, стоит сравнивать например:

  • Joomla и K2 с Drupal 6 и CCK,
  • или Joomla + Seblod vs Drupal + CCK,
  • в крайнем случае, Joomla без CCK и Drupal без CCK.

Как обстоят дела в других CMS?

Про Drupal уже сказали выше.
В ModX имеется встроенный аналог CCK, только под названием «переменные шаблона». Для большинства задач его достаточно.
В 1C-Битрикс также есть конструктор контента, даже в самой младшей редакции.
Как обстоит дело в других CMS я не интересовался.

Использованные материалы

  1. Выбор CCK для Joomla
    http://nyphalim.ru/2012/02/04/1/
  2. Серия статей по Seblod CCK
    на также сайте есть статьи по другим компонентам Joomla
    http://wedal.ru/seblod.html
  3. Обзор CCK компонентов для Joomla
    http://www.amiseo.ru/joomla/extensions/obzor-cck-komponentov-dlya-joomla
  4. Серия скринкастов по K2
    http://ktonanovenkogo.ru/joomla/rasshireniy/komponent-k2-sozdaniya-blogov-katalogov-portalov-joomla-vozmozhnosti-ustanovka-rusifikaciya.html

Комментарии:
— Для WordPress есть : этот а смотрю здесь.

— Приходилось реализовать несколько проектов с использованием CCK.

1. Есть еще Shellmanager не известный особо ССК — но с помощью него (дописав функционал) удалось реализовать сложное сравнение продуктов по техническим парраметрам из разных категорий.

2.ZOO явно удобнее для использования, чем K2 — отличная работа с шаблонами, полями, легко дописываются фильтры, калькуляторы и фотогарелеи.

3.Seblod — полностью перешел в joomla из drupal, отсюда до сих пор огромное количество багов, причем последняя версия работает еще хуже предыдущей (субъективно), слишком тесно интегрируется, чем мешает выводу просто материалов, сбиваются шаблоны.

Отсутствие интеграции с Joomla com_content, по мне скорей преимущество. Есть возможность под конкретную задачу создать каталог — например список гостиниц. Клиент знает, что бы управлять каталогом, надо зайти в ZOO (пример), остальной контент работает на стандартном очень простом выводе материалов.

— По поводу Кобальта 7.

Сначала по поводу интеграции с com_content.

Есть 2 понятия в ССК для джумлы.

1, Интеграция — и это как бы утилизация того что существует на стандартный конетнт джумлы, что бы это работало и в ССК
2, Основание — это когда расширение строится на стандартном контенте джумлы и используются таблицы конетента джумлы

Так вот Кобальт чудесно интегрирован с контентом джумлы но не основан на контенте джумлы. Это значит что вы можете использовать в Кобальте плагины которые вы используете в контенте джумлы, но Кобальт использует свои таблицы для хранения данных.

Честно сказать создания ССК на базе конетента джумлы нельзя выставлять как преимущество но и как недостаток. Просто есть 2 виды ССК для джумлы. Построенные на базе контента джумлы и на своей базе. А вообще у своей базы есть ряд преимуществ. Но это тема другой статьи.

Еще по кобальту, это русский язык сделаный самим разработчиком очень коректный (но пока не исправлена граматика).

Поддержка на русском. Это тоже может оказаться важным для многих.

Еще важно отметить что Кобальт обладает рядом преимуществ. Уведомления. Это вообще сила. Это даже не письма на емайл а как бы как на одноклассниках пометки везде где что нового.

Релативные связи. Возможность связывать статьи как предок-дитя просто уникальны. Например Артист — Альбомы, Продукт — точки продажи как гугль карта, и любые другие.

Вот недавно вышел пакет форм. За 5 минут у вас готовый форму на сайте ни многим отличающийся от других форумов но опять же сделанный на Кобальт. И это все бесплатно. К стати это очень хорошая демонстрация что может Кобальт в бесплатной версии.

С чем я еще столкнулся это скорость работы. Почти у всех ССК есть эта проблема. Сегодня есть реальные клиенты с 80 000+ статей и 3000+ категорий, все связанные релативными отношениями предок-дитя и все в 1 секунда.

Я не хочу сказать что Кобальт лучший. Вообще я бы не рискнул делать заключение какой ССК лучший но я с уверенностью могу заявить что этот Компонент заслуживает пристального внимания.

Комментарии запрещены.