Typo3 и разработка социально-ориентированных сайтов
Было уже довольно много споров и обсуждений по поводу того можно ли строить на Typo3 социальные сайты.
В большинстве случаев лидирует мнение, что эта система предназначена в основном для создания сайтов-визиток и сайтов компаний, но никак ни для сайтов ориентированных на создаваемый пользователями контент.
Попробуем разобраться в этом вопросе и в последующих очерках рассматривать возможности этой системы, ее плагинов и их настройку.
Порог вхождения для разработки на этой системе безусловно высок. Для ее банальной настройки и создания простейшего сайта рекомендуется техническое мышление и прочтения порядочного количества страниц документации (как минимум порядка 2-3 документов).
Эти факты отпугивают большинство разработчиков от освоения системы и они начинают рассматривать другие альтернативы.
Но не все так плохо. Ее сложность и требуемое время на освоение, компенсирует удивительно логично построенная система, огромные возможности, заложенные в ее архитектуре и восторг программиста, который постепенно вникает в возможности, открывшиеся для него.
Так же бытует мнение, что она очень тяжелая и малопроизводительная в отличие от других систем. Хотелось бы в процессе ее эксплуатации в этом разобраться. Но уже на этапе освоения становиться понятно, что можно поступиться уменьшенной производительностью ради открывающихся возможностей: подумать только, безграничное количество шаблонов, хоть для каждой страницы, с какой угодно компоновкой плагинов и контента за считанные минуты без головной боли!
Что касается контента, создаваемого пользователями. Все считают, что с этим плохо. Я бы так не сказал. Для frontend части сайта существует огромнейшее количество модулей, позволяющих сделать почти все что угодно. Конечно, так просто их на сайт не кинуть, сразу же они не заработают, их нужно настраивать, а перед этим опять же читать документацию (уже чисто для плагинов и на английском, если повезет).
Но такие адские муки перекрывают, как я уже говорил безграничные возможности по масштабированию приложения, огромнейшая гибкость.
Возможно, чтобы удовлетворить все потребности, функционала плагинов не хватит. Захочется «так-то и вот таким образом». Тут уже придется прибегнуть к программированию, но к этому прибегают на любой системе, когда потребности перестают быть стандартными.
И вот в этот то момент очень придется кстати логичность системы. Удобство создания на ней плагинов и «бесшовное» встраивание их в работу системы.
Тут следует добавить, что уже существуют фреймворки, которые сами будут генерировать шаблоны компонентов, а вам останется только наполнять их бизнес-логикой.
Существуют плагины для настройки отображения содержания БД, с подключением шаблонов для визуализации этого содержимого.
Просто куча всего.
Единственное что плохо — так это то, что требуется довольно много времени, чтобы со всем разобраться и настроить, а так же отсутствие нормального русскоязычного сообщества, в котором обновляется информация по опыту использования системы. В основном, все решается поиском на сайтах на английском или, вообще ужас, на немецком, или банальным ковырянием в коде.
Но я думаю не стоит отбрасывать систему только потому что сложно. Кто хочет — пусть пробует, а остальным может быть и пригодиться!
Главное делиться знаниями, а не зажимать их боясь развить себе конкуренцию, ведь именно на обмене знаниями и развиваются все Open Source проекты, да и не только они. И лично я считаю, что за ними будущее!
P.S. Забыл добавить, что все плагины для системы бесплатные. Что приятно удивляет по сравнению с тем же Drupal, Joomla и остальными. Кто-то будет кричать «да они все кривые, код ужасный». Может он и прав, но я просто хотел донести этот факт.
И еще в этом посте приведу список расширений для начала разработки социально-ориентированного сайта, которые сам уже успел пощупать (здесь перечислены extension key для поиска их в репозитории typo3).
sr_feuser_register
— регистрация пользователя на сайте (отправка подтверждения на email и все дела + уже есть русская локализация, довольно хорошая)
felogin
— вход пользователей на сайт (входит в базовый пакет)
elemente_fenews
— создание статей (новостей) фронт-пользователями сайта, удобная настройка полей, для авторов статей можно добавлять иконки для редактирования и удаления статей
ttnews_selectconf
— плагин настройки отображения списка статей (новостей), используется для отображения статей определенного автора (типо «Мои статьи»)
ratings
— простая, но очень симпатичная система рейтингов для статей, на первом этапе вполне достаточно, работает на AJAX
ttnews_mostrated
— отображение рейтингов статей с сортировкой и пороговым значением оценки