Давайте сделаем это на Drupal!
Современные сайты редко создаются без использования CMS или CMF, так как построение фундамента проекта на готовых и эффективных решениях значительно оптимизирует процесс разработки. Чем сложнее функционал создаваемого сайта, тем "монструознее" выбираемая платформа. При этом требования к навыкам разработчика также возрастают, несмотря на кажущееся упрощение задачи - те же Joomla, Drupal, Wordpress, уже "умеют" очень многое, как говорится, right out of the box.
В данной статье пойдет речь о том, на что стоит обратить внимание и чего стоит избегать разработчикам, уже выбравшим для своего проекта или пока только оценивающим популярную многофункциональную CMS Drupal.

На данный момент Drupal насчитывает около 4000 модулей-расширений, с помощью него можно построить фактически любой сайт - от простенького блога, до интернет магазина или многофункциональной социальной сети. Существует множество уже готовых визуальных тем для Drupal, создание индивидуальных тем максимально упрощено.
Такое описание естественно окажется привлекательным для многих веб-программистов и дизайнеров, но давайте рассмотрим задачу перехода на Drupal с точки зрения уменьшения трудозатрат при воплощении проекта в его счастливую жизнь.
Чтобы получить реальное преимущество от предлагаемых готовых решений, необходимо не только владеть знаниями и опытом в области программирования, но также отлично разбираться в архитектуре выбранной платформы. В противном случае, разработка выльется в крайне трудоёмкий процесс, что обязательно отразится на сроках и качестве исполнения.
Итак, вы полны сил и желания использовать Drupal в своем проекте. Вы изучили теоретическую базу и опробовали эту CMS в действии. Пришла пора применять подход Drupal для разработки сайта вашей мечты.
В чем же заключается этот самый подход, на что стоит обратить внимание?
1) Первое и самое главное, что стоит усвоить и постоянно держать в голове. Прежде чем писать какой-либо модуль, убедитесь, что он не был написан до вас!
В идеале, заставьте себя открыть раздел модулей и изучить весь этот бесконечный список. Не удивляйтесь, если в процессе вы вдруг начнете массово неконтролируемо скачивать модули, так, прозапас.
2) Пожалуй, наиболее часто используемые функции Drupal - это построение форм с помощью Forms.api, имплементация hook-oв (например, hook_user), а также функции темизации (скажем, theme_form). Поэтому чем быстрее вы освоитесь в них, тем меньше проволочек будет в процессе разработки.
3) Создавая свои модули, всегда старайтесь делать это с оглядкой на интеграцию с другими модулями, написанными умными и зарекомендовавшими себя людьми :) Это поможет избежать ситуаций, когда вы вдруг оказываетесь перед выбором - переделывать немалую долю уже выполненной работы, чтобы связать свой модуль с готовым, либо писать свой аналог готового модуля, что часто гораздо трудозатратнее.
4) Как следствие из предыдущего пункта: всегда старайтесь продумать процесс разработки на шаг вперед. Например, если ваш проект планируется сделать многоязычным, пишите код так, чтобы в последствии сайт было просто локализовать - пропускайте весь выводимый текст через функцию t(), а все ссылки создавайте с помощью функции l(). Впрочем, тут вы мне можете довериться, делать это лучше в любом случае, не зависимо от того, локализуется ли сайт.
5) В процессе разработки использовать всевозможное кэширование не имеет смысла, но после запуска проекта обязательно позаботьтесь о том, чтобы оно работало и работало корректно, иначе ваш стремительно набирающий популярность сайт быстренько умрет от перегрузок. С этой целью для картинок, отображаемых на сайте, можно поставить модуль Imagecache. Также не забудьте настроить на вашем хостинге работу cron.
6) Многие недооценивают роль таксономии в Drupal, видя в ней лишь очередную инкарнацию тэгов. По сути же, таксономия это инструмент для иерархического структуирования контента, назначения и определения категорий, и вообще всего, что связано с фильтрацией и катологизацией информации! Например, с помощью системы словарей можно создать нестандартный категориальный поиск по всей информации, доступной на сайте, включая пользователей, которые не являются контентом как таковым. Но об этом как-нибудь в другой раз.
7) Скачайте и установите модуль Devel и начинайте привыкать использовать функцию dpr() вместо print_r(), а также запомните магический адрес "/devel/cache/clear ", который быстро и надежно очистит неотключаемое кэширование друпаловской системы меню. Очищать его придется частенько в случае, если ваши модули будут включать в меню (грубо говоря список доступных страниц) свои собственные страницы. Данный модуль предоставляет и такие полезные функции, как расширенные логи производительности, просмотр генерируемых страницей SQL запросов и много другое.
Вероятно приведенные выше советы, покажутся слишком очевидными, либо наоборот излишними. Мы их в полной мере осознали, что называется, hard-way - на собственных ошибках. Возможно через эти ошибки обречен пройти каждый разработчик CMS Drupal. В любом случае, пожелаем вам удачи, и да прибудет с вами сила Drupal-а :)
- 4401 просмотр

Комментарии
Статья хорошая и
Статья хорошая и поучительная
Но мне лично ещё больше понравилась статья про Работу бесплатно 
Можно вопрос - а каким конкретно плагином jQuery Вы делали окошечко - в котором показан сайт, на которую ведёт соответствующая ссылка? Извините за вопрос не по теме
Спасибо за отзыв Плагин
Спасибо за отзыв
Плагин Websnapr
А для иконки внешнего линка, справа которая - External Links
Браво, блестящая идея и
Браво, блестящая идея и своевременно
(Тема не указана)
Что не говори - заметельный
Что не говори - заметельный пост!
победители недр дочка
победители недр дочка монтесуми і пливе корабель ченслер птицы seropol5
ауди 80 ауді 80 огляди metal
ауди 80 ауді 80 огляди metal fonts christmas fonts шрифты тату шрифты автомобили mercedes-benz автомобили mercedes seropol5
сад и огород французские
сад и огород французские автомобили сказки в мире сказок корейские автомобили китайские автомобили seropol5
компания, которая производит
компания, которая производит и реализует изделия
[url=http://gptstal.ru/production/listovaya-stal-porezka-metala]Листовая сталь[/url] Резка металла
[url=http://gptstal.ru/production/listovaya-stal-porezka-metala]Стальные профили[/url] Стальной металлический гнутый профиль
компания, которая производит
компания, которая производит и реализует изделия
Листовая сталь Резка металла
Стальные профили Стальной металлический гнутый профиль
Компания, которая занимается
Компания, которая занимается продажей автоколес, предлагает вам: Популярное топ шины , топ диски
Компания, которая занимается
Компания, которая занимается продажей автоколес, предлагает вам: Популярное топ шины , топ диски
Профессиональное создание и
Профессиональное создание и раскрутка сайтов у нас: Создание сайтов создание web сайта киев; Контекстная реклама сайта Создание и ведение рекламной кампании
А я вот только начал
А я вот только начал разбираться. Тему сайта пока сделал в Артистере (знаю, гуано).
Но уже многое изменил и улучшил. Но не пойму, как и где загнать в переменную, например $head то, что хочу
А я вот только начал
А я вот только начал разбираться. Тему сайта пока сделал в Артистере (знаю, гуано).
Но уже многое изменил и улучшил. Но не пойму, как и где загнать в переменную, например $head то, что хочу
Superb work! The information
Superb work! The information presented was very helpful. I hope that you carry on with the good work succesfully done.
Locksmiths in Glendale AZ
Union City locksmith
hialeah locksmith
locksmith hialeah
Locksmith Memphis TN
Locksmith Washington
Memphis Locksmiths
Atlanta Locksmiths
Locksmith Washington DC
Locksmith Washington
Washington DC Locksmith
Atlanta Ga Locksmith
Locksmith Corona CA
Locksmith Hampton VA
Locksmith Corona
Corona Locksmiths
Baltimore Locksmith
Locksmith Waukegan
Locksmith Golden CO
Locksmith kendall
Locksmith Corona CA
Locksmith Washington
Memphis TN Locksmith
Locksmith Bayonne
Locksmith Clifton NJ
Locksmith Aventura
Locksmith Mesquite
Newport News Locksmiths
Garland Locksmiths
Rancho Cucamonga Locksmiths
Westfield Locksmiths
Locksmiths Bellflower
Mesa Locksmiths
Locksmith in Livingston
Locksmith Henderson
Locksmith in Fort Worth
Locksmith in Brentwood
Locksmith Mt Vernon
Locksmith in Aspen Hill
Locksmith Long Beach CA
Detroit Locksmith
Indianapolis Locksmiths
Houston Locksmith
locksmith Dallas
Castle Rock Locksmith
Locksmith Paterson
Haddon Township Locksmith
Locksmith Hawthorne
locksmith Portland OR
Oklahoma City locksmith
Отправить комментарий