mr_T
@mr_T
Web-разработчик

Какое ваше мнение о Drupal?

Для начала небольшое, скажем так, предисловие к вопросу, чтобы сразу отсеять некоторые возможные ответы.

Я активно использую 2 системы управления контентом - Drupal и 1С-Битрикс. Так же знаком с WordPress и Joomla.
Все эти системы имеют, само собой, свои достоинства и недостатки, но все же из всех них больше всех мне нравится именно Drupal.
Я хотел бы узнать мнение людей, которые тоже имели возможность сравнивать разные решения, какая система им нравится больше и почему, а так же получить ответы на ряд вопросов.

Итак, вопросы:
1) Почему считается, что друпал сложно темизировать? Лично я просто переопределяю все стандартные шаблоны регионов, блоков и т.п. и чищу код там, в итоге избавляясь от всех проблем темизации, так как сам указываю, что выводить, во вполне конкретном виде. Конечно, это может убрать много полезных функций типа contextual links, но если они нужны - кто мешает их включить в собственном коде?
2) Действительно ли друпал очень медленный? Медленней ли он того же битрикса?
3) Этот вопрос к тем, кто имел дело с интернет-магазинами на друпале: стоит ли вообще делать на нем интернет-магазины? Мое мнение таково, что удобнее на битриксе, но с уберкартом у меня были очень недолгие отношения, вряд ли я в нем хорошо разобрался.
4) Если вы имели дело с формами на сайте, подскажите, как лучше их реализовать, чтобы получился некий аналог форм в битриксе - с почтовыми шаблонами, настройкой вопросов и т.д. и т.п. Здесь у меня возникали проблемы именно с темизацией, то есть хотелось бы просто вывести, например, блок с формой, на которую есть готовая верстка и стандартная разметка друпала по этой причине не устраивает.
5) Есть люди, которые сравнивают инфоблоки битрикса с нодами друпала. Как по мне - ноды в кипе с таксономией в пух и прах разбивают инфоблоки. У кого другое мнение и почему?
6) Действительно ли вам показался друпал сложным в освоении (как программистам, разумеется) в сравнении с другими системами? Я считаю, что достаточно понять фиолософию хуков, что не очень сложно, а дальше уже пойдет как по маслу, тем более с подробной документацией на drupal.org (вы же знаете английский достаточно, чтобы читать техническую документацию?).
7) Как вы темизировали хлебные крошки и постраничную навигацию? На мой взгляд, разработчики друпала были сильно не правы, не реализовав их через файлы шаблонов. Я понимаю, что можно вывести их в шаблоны ручками, но, согласитесь, это не самое лучшее решение.
8) И напоследок: какую CMS любите вы и почему? Особенно интересует НЕ друпал.
  • Вопрос задан
  • 4697 просмотров
Пригласить эксперта
Ответы на вопрос 7
andead
@andead
друпал девелопер
1) Почему считается, что друпал сложно темизировать?


Друпал сложно правильно темизировать. Достаточно тяжело понять всю систему из theme функций/файлов, preprocess/process функций, theme sugestions, render массивов, различных pre_build/after_build/post_build калбаков, theme врапперов, кэширования и т.п. Наговнокодить прямо в шаблоне большого ума не надо.

2) Действительно ли друпал очень медленный?


Друпал, как и любая другая CMS, медленнее узкоспециализированных систем в виду своей избыточности. Голый друпал 7 на средней машине генерит странички за ~100 ms. Решайте сами, это очень медленно или нет.

3) Этот вопрос к тем, кто имел дело с интернет-магазинами на друпале: стоит ли вообще делать на нем интернет-магазины?


Если нет хорошего скила или денег на соответствующего разработчика, то не стоит.

4) Если вы имели дело с формами на сайте, подскажите, как лучше их реализовать, чтобы получился некий аналог форм в битриксе


Популярно — Webform. Правильно — Entityforms.

6) Действительно ли вам показался друпал сложным в освоении (как программистам, разумеется) в сравнении с другими системами?


Нет. Какой-нибудь Symfony 2 на порядок сложнее будет.

7) Как вы темизировали хлебные крошки и постраничную навигацию? На мой взгляд, разработчики друпала были сильно не правы, не реализовав их через файлы шаблонов.


Они реализованы theme функциями theme_breadcrumb и theme_pager. Функции мало чем отличаются от шаблонов — их так же можно переопределять, процессить и использовать через theme('...').
Ответ написан
kalabro
@kalabro
Во-первых, я полностью согласна с @andead. Спасибо за отличный ответ, man!

Позволю себе небольшие дополнения как битрикс-разработчик.
1) Почему считается, что друпал сложно темизировать?

Наговнокодить прямо в шаблоне большого ума не надо.

Правильно темизировать и битрикс нелегко. Другой разговор, что оставить в шаблоне друпала $_SESSION в 100 раз хуже, чем оставить тоже самое в шаблоне битрикса. Процесс темизации и той, и другой CMS должен контролировать понимающий систему программист.

2) Действительно ли друпал очень медленный? Медленней ли он того же битрикса?

В битриксе каждый «блок» (часть страницы) можно независимо закешировать на основе идентификаторов групп пользователя, значений фильтра каталога и чего угодно. Обёртка $this->StartResultCache() как отче наш в любом коде и в стандартных компонентах из коробки. В итоге страница быстро собирается из кешей для людей с сессией, авторизацией и т.д. В друпале нужно стремиться к этому же, но для этого приходится писать свои кеш-плагины к Panels, шаманить с Expire и даже ESI и понимать всякие тонкости работы друпал-кеширования (drupalace.ru/tags/cache).
В битриксе всякие панели производительности и мониторы качества из коробки. В друпале это "энтерпрайз"-услуга :)

3) Этот вопрос к тем, кто имел дело с интернет-магазинами на друпале: стоит ли вообще делать на нем интернет-магазины? Мое мнение таково, что удобнее на битриксе

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

5) Есть люди, которые сравнивают инфоблоки битрикса с нодами друпала. Как по мне - ноды в кипе с таксономией в пух и прах разбивают инфоблоки. У кого другое мнение и почему?

Инфоблоки гораздо мощнее просто нод из коробки. Опыт работы с тем и другим >2 лет. Сравнивать можно сущности в друпале и инфоблоки в битриксе. Вот здесь уже друпал (вместе с Entity API, конечно) смотрится гораздо серьёзней и гибче. Битрикс выглядит глупо, когда нужно что-то странное, друпал же позволяет воротить что угодно.

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

Webform/Entityforms гораздо проще битрикса в плане собственно форм, просто надо привыкнуть. А вот email-подсистема в друпале послабее. В друпале если что-то делают, то только со вселенским размахом :) Как пример, Message Stack :)

Действительно ли вам показался друпал сложным в освоении (как программистам, разумеется) в сравнении с другими системами?

Спустя 2 года я нахожу что-то новое и очень крутое в друпале или благодаря друпалу. Не могу ответить на этот вопрос, т.к. продолжаю учиться :)

Как вы темизировали хлебные крошки и постраничную навигацию?

Пользуясь случаем, пропиарю модуль Path Breadcrumbs, ко-мейнтейнером которого гордо являюсь. В нём переопределяется theme_breadcrumb() для добавления поддержки Rich Snippets: drupalcode.org/project/path_breadcrumbs.git/blob/c...
С помощью того же hook_theme_registry_alter() вы можете заставить крошки темизироваться через файл, а не функцию.

Друпал люблю больше из-за качества кода и сообщества.
Ответ написан
kissarat
@kissarat
Node.js
Не видел ничего более простого и мощного как Drupal. Это - любовь с первого взгляда.
Перед знакомством с Drupal я не очень охотно использовал всякие "надстройки над апи" т.е. фреймворки и библиотеки, в частности потому что не позволяли писать меньше кода (а, следовательно, делать отладку более быстрой), а лишь структурировали его, делали его более декларативным. Да и вообще, я не хотел иметь что-то общее с PHP)))
Но то, что позволяет Drupal - невообразимо. Единственное ограничения, которое накладываться на программиста - это структура БД и это при том, что можно полностью, весьма гибко, использовать существующую структуру, так и создавать свои таблицы/вюхи, свьязивая их с уже существующими сущностями и получая тоже самое если бы свои структуры не использовались, т.е. возможность использовать скачанные модули для "совсем собственного" функционалу.
Не знаю можно ли назвать недостатком процедурный стиль. Т.е. пока я вижу преимущество простоты, которое, к тому же, не накладывает ограничений на использование ООП. Но с появлением Drupal 8 мне видеться раскол такой же, который был когда появился Python 3. Т.е. сейчас существует два независимы, хоть и совместимы языка - Python 2.* и Python 3.*

Есть и существенные недостатки - мизерное количество документации. Но вообщем то разобраться что делает функция можно и по ее исходному коду, что совсем не является проблемой, потому что он делался в лучших традициях UNIX) Есть отсюда и жесткое следствия - Drupal не для дибилов. Да и настройки администратора весьма не просты, поэтому для конечного пользователя лучше создавать "страницу со всем необходимым")
Ответ написан
Дважды пробовал подружиться с друпалом - не срастается, с горем пополам доделал сайты на нем и зарекся связываться. Еще не видел ни одной CMS, в которой все настолько НЕдружелюбно и НЕлогично устроено (для программиста и дизайнера-верстальщика).

Для магазинов - предпочитаю однозначно Opencart.
Для всего остального... из распространенных мне удобнее - Джумла. Она отлично поддается любой кастомизации. К тому же - очень легко чистится и оптимизируется, после чего просто летает.
Ответ написан
если для интернет магазина - посмотрите в сторону opencart , шустрый, модули, MVC. Очень нравиться мне.
Ответ написан
miraage
@miraage
Не работал с друпалом, но, такой серьезный проект, как league of legends имеет сайт на друпале.
Ответ написан
mr_T
@mr_T Автор вопроса
Web-разработчик
По поводу почтовых уведомлений (если этот вопрос еще вообще кто-то смотрит): надо было просто покопаться в модуле Rules, который обеспечивает в частности функционал отправки почты и на мой взгляд даже на более крутом уровне, чем в битриксе. Хотя, наверное, в нем будет сложнее разобраться простым смертным, но давайте будем честны с самими собой - когда пользователи (заказчики) сами такой функционал настраивают? Все равно это всегда делает программист)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
27 сент. 2020, в 17:37
6000 руб./за проект
27 сент. 2020, в 16:41
12000 руб./за проект
27 сент. 2020, в 15:58
2000 руб./за проект