Всем приветы. WordPress никогда не пользовался, видел только на картинках. Но наслышан и начитан о нём очень и очень много. И всегда говорят о WP только положительное.
До этого времени имел дело только с Drupal 7.
И так...прежде, чем попробовать WordPress у меня возникает несколько вопросов...правда это больше похоже на сравнение с Drupal:
1) единственный репозиторий модулей и тем drupal.org - все модули и темы лежат в одном официальном и проверенном месте. Ты можешь быть уверен, что в модуле или теме не зарыт какой-нибудь бэкдор или вирус. плюсы - безопасность, удобно искать. Помимо этого используя модуль Localization Update мы вместе с активацией модулей автоматически получаем к ним локализацию на необходимые нам языки.
2) поля и типы материала - в Drupal очень удобно работать с типами содержимого. Например, я делаю тип материала "Фотоальбом", который имеет поля "Название альбома", "Фотографии", "Описание". Т.е. юзер создавая материал этого типа попадает на форму, где ему предлагается ввести заголовок фотоальбома, прикрепить фотки и по желанию добавить описание. Или например, на сайте есть тип материала "Сотрудник", который имеет поля "ФИО", "Возраст", "Опыт работы", "Откуда". Таким образом админ сайта может добавлять сотрудников, которые тем самым выводятся либо где-то в блоке списком либо на странице.
На каждое из полей можно навешивать виджеты. Например на поле "Фотографии" навешиваем виджет "Colorbox" (одноименный модуль) и наши фотки будут открываться и листаться в знаменитом просмотрщике. Или же будь у нас поле "Видео" мы можем воспользоваться модулем YouTube Field, в настройке поля указать виджет ютуба, и нам остается при создании материала просто вставить ссылку на видео в поле, после сохранения видео автоматом по заданным в настройках виджета размерам и т.п. отобразится на странице.
А благодаря модулю FileFIeld Path мы можем в настройках поля указывать место для хранения прикрепленных файлов. Да еще и воспользоваться Token для автоматического именования этих файлов.
Дополняясь всякими модулями типа FieldSlideshow или GalleryFormatter мы можем красивенько так выводить медиафайлы в материале.
А с помощью замечательного модуля Field Group мы легко разбиваем определенные поля по определенным вкладкам.
3) views - мне кажется название этого модуля знают даже те кто никогда не работал с Друпалом. вывести можно всё что угодно под какими угодно фильтрами (по типу контента, например, создать блок "Последние новости" или "Последние комментарии"). Выводить все эти дела слайдерами эффектов через Views Slideshow.
4) стили изображений (пресеты) - в Drupal есть такая удобная фишка..мы создаем свои пресеты изображений, указывает размеры, по каком типу сжимать (просто смаштабировать или же масштаб и обрезка). Мало того при помощи модуля Imagecache Actions мы можем на изображения накладывать водяные знаки, поворачивать их, менять цветовую гамму, подложку, рамку и т.п. После чего эти пресеты использовать в различных местах (например, в блоке один пресет, в материале другой)
5) доска объявлений - на Drupal запросто возможно построить доску объявлений. из вышесказонного мною достаточно воспользоваться типами материала, полями и выводом инфы через views. Для категоризации будем использовать таксономию. Например создаем словарь таксономии "Авто", в нем термины "Mercedes", "Mazda". "Honda" и т.п. Создаем тип материала "Автомобиль", добавляем поля "Марка", "Цвет", "Состояние", "Цена" (тут же для пример укажем, что в это поле можно заполнять только цифры и ничего кроме), "Фото машины", ну и добавим поле для выбора термина из перечисленных выше, например выпадающим списком. Выводить это дело будем через Views хоть сеткой хоть списком по дате добавления. Для удобства добавления контента можно разбить все эти дела по шагам блягодаря Field Group.
6) пользователи и права - в Drupal возможно создавать отдельные группы пользователей с определенными полномочиями. Например создавать модератором или менеджеров. Модеры имеют права на правку и удаление комментов, а менеджеры могут создавать материалы определенного типа.
7) форум - я так понимаю для WP есть готовое решение - bbPress. В Drupal это реализуется встроенным модулем Forum, расширяется с помощью Advanced Forum + Author Pane (можно выводить инфу онлайн пользователь или нет, когда зарегался, сколько комментов оставил и т.п.)...вообщем можно получить полноценный форум.
8) соц. сеть - я так понимаю для WP есть готовое решение - BuddyPress. в Drupal это реализуется так: личные сообщения - privatemsg, добавление в друзья - flag friends. Ну а профили - расширяются все теми же полями как и типы материалов. Там же аватарки. Группы - Organic Groups. Я точно не помню как называется, но есть модуль, который в профили пользователей добавляет что-то типа стены Facebook.
9) модуль действий - Rules - с помощью этого модуля мы можем совершать определенные действия после определенных событий, например, цитирую "уведомление админа по разным причинам, контроль создания/публикации или доступа к материалам, расчет скидки в магазине, запрет комментов по сроку давности (или по другим причинам)"
10) интернет-магазин и интеграция с 1С - Drupal + Commerce довольно-таки гибкий магазинчик люди собирают. мне еще не приходилось собирать магазы, но даже друпальщики поговаривают, что в случае с Друпалом получается все-таки тяжелая система. Хотя тот же Magento тоже не "худой" и ниче. А в WP возможна интеграция с 1С?
11) мультиязычность - тут сказать особо нечего, достаточно почитать о мультиязычности в Drupal.
12) количество контента и нагрузка на сайт - Drupal славится тем, что держит очень большое количество контента и потока посетителей на сайт. мне еще не приходилось держать крупные проекты, так что.....
13) безопасность - я тут мало чего могу добавить, но поговаривают о том, что Drupal довольно-таки стабильная и надежная вещица.
А как с этим обстоят дела у WordPress?
Кстати, можете так же писать почему и за что вы не любите Drupal и какие вы видите в нем недостатки по сравнению с WordPress.
Знаете за что я люблю друпал? За все те плюсы которые вы описали и те о которых вы забыли. А за что я ненавижу WP? За то что там всего этого нет!
Вордпрес из коробки умеет делать только страницы и статьи и больше ничего. Все остальное вы делаете двумя путями, либо вы находите плагин который реализует необходимый функционал либо лезете в код и начинаете писать всякий код который добавит вам свой тип статьи (да в WP, что бы и как бы вы не делали будет статьями) и добавляете этому типу мета поле. Расписывать вам тут не буду, просто почитайте на тему добавления мета полей к своим типам статей.
Мое мнение, с которым вы можете не согласиться таково - WP это ад для разработчика, все его ядро работает вокруг двух ключевых особенностей.
1) Ваша страница грузит из базы статью
2) Ваша страница грузит из базы несколько статей.
Далее вы вы подключаете к этому два файлика header и footer и все, это все ядро ВП.
Остальные ништяки вы делаете тем что добавляете фильтры которые эти ваши данные меняют. То есть каждый плагин, каждая функция темы это просто функции которые грузятся по очереди получают на вход инфу о статье, как то ее меняют и отдают дальше. И эта работа ведется в глобальной области видимости.
Я вот с вами поспорю про работу в глобальной области. Не хорошо в WP так работать с данными и вполне можно так не делать. Правда, в большинстве проектов работа будет организована с глобальным $post.
Villarou: Возможно есть способ, но все что я видел работало именно так. Кроме того, даже если исключить глобальную область видимости, в ВП останется куча недостатков, и не будет той гибкости которую дает друпал. У ВП два плюса, популярность и количество плагинов.
Евгений Елчев: да, друпал гибок. Но зачастую как раз вот в этой гибкости и нет нужды. Популярность WP -один из его же самых больших минусов (если не самый. Обратную совместимость с очень старыми версиями поддерживают ровно по этой же причине.). В сети столько решений определенную букву, что просто страшно.
Villarou: Тут вопрос в производственном процессе так сказать. Если у вас веб студия которая к примеру шаблонными сайтами торгует, то тут и диз может сразу делать по ваим гайд лайнам и верстальщик сделать сразу под WP и заказчику в можете сказать, что вот так вот хорошо. Но я сталкивался с ВП именно в контексте кастомизации. Когда готового решения вообще нет, либо его необходимо было очень сильно изменить и в эти моменты я яростно материл разработчиков ВП, хотя я конечно понимаю легаси, все дела, но блин, то что делается в друпала из админки, здесь приходилось долго прогать, а ведь это cms, она предназначена для настройки из админки.
Я вот вообще не отдаю предпочтения каким-то системам. Каждой свое место. Но в моих реалиях, когда нужно сделать сайтик на CMS, я не выберу Drupal если мне нужно его сделать очень быстро. Возможно, сказывается тот факт, что для WP у нас есть хорошая заготовка, которая быстро покрывает где-то 80% хотелок заказчика.
1) единственный репозиторий модулей и тем - все в одном месте и в WP. Их тоже стараются проверять, но по факту все плагины вы ставите на свой страх и риск.
2) поля и типы материала - можно сделать, но не из коробки.
3) views - в WP вы тоже сможете вывести все как вам нужно. Но из вашего описания не смогу дать более конкретный ответ.
4) стили изображений (пресеты)
вот работа с изображениями - то что я по истине ненавижу в WP. Плагины это дело правят, но "задолбашка" у меня есть
5) доска объявлений
точно так же вы можете использовать типы постов, таксономии и т.п.
6) пользователи и права - можно сделать. Но я далеко не в восторге от механизма.
7) форум
на мой взгляд для форумов есть свои движки. интегрировать их с WP вообще не сложно.
8) соц. сеть
да, есть BuddyPress. Можно делать нечто свое или собирать из разных плагинов (смотря какой функционал нужен).
9) модуль действий
это тоже возможно. но на мой взгляд механизм так себе.
10) интернет-магазин и интеграция с 1С
в теории - да. Но думаю на практике получится извращение. По-моему любая система интегрированная с 1С не будет славиться скоростью.
11) мультиязычность - ну тут 50 на 50. В любом случае есть сторонние решения разного качества.
12) количество контента и нагрузка на сайт - ну возьмите, к примеру, тот же Smashing Magazine. Большой, контента много, работает тоже шустро. Да, при определенной нагрузке вам придется заниматься оптимизацией. А в какой CMS не придется?
13) безопасность - одно слово - PHP. Со всеми вытекающими. Сам по себе из коробки WP (давайте говорить все таки о новых его версиях) достаточно безопасен (да и критические баги фиксят обычно быстро). Если вы хотите супер-пупер защиту - вам придется позаботится об этом отдельно.
а на каких основаниях все ноют в сторону друпала из-за того, что система строится на модулях? Коснись WP - куда не плюнь везде плагины...плагины и еще раз плагины.
все в одном месте и в WP. Их тоже стараются проверять, но по факту все плагины вы ставите на свой страх и риск.
стараются?
вот работа с изображениями - то что я по истине ненавижу в WP. Плагины это дело правят, но "задолбашка" у меня есть
пользователи и права - можно сделать. Но я далеко не в восторге от механизма.
модуль действий
это тоже возможно. но на мой взгляд механизм так себе.
По нему не то что бы грустно... Грусть этого списка зависит от нужных возможностей и заказчика. К примеру, мультиязычность покрывает WPML. Но он платный и поди объясни русскому заказчику, почему он должен за него платить. Вон же аналог есть и не стоит ничего. А то что аналог не покрывает требуемый функционал - "так допишите и нет, я не буду вам за это дополнительно платить".
Самая большая проблема WP - его часто используют там, где его быть не должно.