Your SlideShare is downloading. ×
0
Создаем Drupal дистрибутив: от идеи до сопровождения Вадим Миргород @dealancer [email_address] ДонНТУ
 
Что такое Drupal дистрибутив? <ul><li>Продукт
OpenSource проект
Drupal </li></ul>
Знаменитые Drupal дистрибутивы <ul><li>OpenPublish  – для газет и журналов
Accquia Commons  – для сайтов сообществ
PressFlow  – быстрый Drupal
Open Atrium  – для совместной работы
ELMS ,  OpenScholar  – для образования
COD  – для конференций </li></ul>
Какая польза от дистрибутива? <ul><li>Готовое Drupal-решение для определенной ниши
Ускорение технологии производства сайтов
Contribution back
Доходы от коммерческой поддержки </li></ul>
 
Первые шаги <ul><li>Как узнать что уже сделано?
http://drupaldistrowatch.com/
http://drupal.org/project/installation%2Bprofiles
Как понять что нужно рынку? </li></ul>
 
Из чего состоит Drupal дистрибутив? <ul><li>Contrib и сustom модули
Тема
Фичи (см. модуль Features)
Установочный профиль
Сборочный файл ( Drush Make ) </li></ul>
Drush – Drupal Shell <ul>&quot;Drush is a command line shell and scripting interface for Drupal, a veritable Swiss Army kn...
Drush Make <ul>Drush Make - это расширение Drush, которое собирает сайт, заданной конфигурации (профили, модули, темы, пат...
Пример
Установочный профиль <ul><li>Задает базовые настройки
Включает необходимые модули
Структура установочного профиля: </li><ul><li>example.info
Upcoming SlideShare
Loading in...5
×

Создаем Drupal дистрибутив: от идеи до сопровождения

1,196

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,196
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Создаем Drupal дистрибутив: от идеи до сопровождения"

  1. 1. Создаем Drupal дистрибутив: от идеи до сопровождения Вадим Миргород @dealancer [email_address] ДонНТУ
  2. 3. Что такое Drupal дистрибутив? <ul><li>Продукт
  3. 4. OpenSource проект
  4. 5. Drupal </li></ul>
  5. 6. Знаменитые Drupal дистрибутивы <ul><li>OpenPublish – для газет и журналов
  6. 7. Accquia Commons – для сайтов сообществ
  7. 8. PressFlow – быстрый Drupal
  8. 9. Open Atrium – для совместной работы
  9. 10. ELMS , OpenScholar – для образования
  10. 11. COD – для конференций </li></ul>
  11. 12. Какая польза от дистрибутива? <ul><li>Готовое Drupal-решение для определенной ниши
  12. 13. Ускорение технологии производства сайтов
  13. 14. Contribution back
  14. 15. Доходы от коммерческой поддержки </li></ul>
  15. 17. Первые шаги <ul><li>Как узнать что уже сделано?
  16. 18. http://drupaldistrowatch.com/
  17. 19. http://drupal.org/project/installation%2Bprofiles
  18. 20. Как понять что нужно рынку? </li></ul>
  19. 22. Из чего состоит Drupal дистрибутив? <ul><li>Contrib и сustom модули
  20. 23. Тема
  21. 24. Фичи (см. модуль Features)
  22. 25. Установочный профиль
  23. 26. Сборочный файл ( Drush Make ) </li></ul>
  24. 27. Drush – Drupal Shell <ul>&quot;Drush is a command line shell and scripting interface for Drupal, a veritable Swiss Army knife designed to make life easier for those of us who spend some of our working hours hacking away at the command prompt.&quot; http://drupal.org/project/drush http://drush.ws/drush_windows_installer </ul>
  25. 28. Drush Make <ul>Drush Make - это расширение Drush, которое собирает сайт, заданной конфигурации (профили, модули, темы, патчи), которая храниться в make файле. drush make distro.make distro --prepare-install http://drupalcode.org/project/drush_make.git/blob/086793e8887008a7841a5ef6081f8cf2766347db:/EXAMPLE.make http://drupal.org/project/drush_make </ul>
  26. 29. Пример
  27. 30. Установочный профиль <ul><li>Задает базовые настройки
  28. 31. Включает необходимые модули
  29. 32. Структура установочного профиля: </li><ul><li>example.info
  30. 33. example.install
  31. 34. example.profile </li></ul><li>Два важных хука: </li><ul><li>hook_install и hook_install_tasks </li></ul></ul>
  32. 35. hook_install_tasks <ul><li>Выполняет задания
  33. 36. Типы заданий: </li><ul><li>Normal – простое действие, PHP код
  34. 37. Batch – многократно повторяющиеся действия, Batch API
  35. 38. Form – диалог с пользователем, Form API </li></ul></ul>
  36. 39. Последовательность установки <ul><li>Выбор профиля и языка
  37. 40. Ввод параметров БД
  38. 41. Вызов hook_install модулей
  39. 42. Вызов hook_install профиля
  40. 43. Конфигурирование сайта
  41. 44. Распаковка фичей
  42. 45. Вызов hook_install_tasks модулей
  43. 46. Вызов hook_install_tasks профиля </li></ul>
  44. 47. Пример
  45. 48. Модуль Features и фичи <ul><li>Модуль Features позволяет экспортировать настройки/конфигурацию в под-модуль (фичу).
  46. 49. Когда фича включена, настройки активны.
  47. 50. Features следит за переопределением пользователем настроек фичи. Позволяет восстанавливать или пересоздавать фичу.
  48. 51. http://drupal.org/project/features - module
  49. 52. http://drupal.org/project/kit - naming conventions </li></ul>
  50. 53. Конфигурация, хранимая в фиче <ul><li>Типы содержимого и поля
  51. 54. Словари таксономии, меню и элементы меню
  52. 55. Роли и права доступа
  53. 56. Форматы ввода и стили изображений
  54. 57. Поддерживаемые модули: Views, Display suite, Context, Panels, Page Manager, Strongarm , и другие... </li></ul>
  55. 58. Модуль Strongarm <ul><li>Совместно с модулем Features, позволяет экспортировать переменные в фичи.
  56. 59. В переменных хранятся настройки многих модулей.
  57. 60. http://drupal.org/project/strongarm </li></ul>
  58. 61. Пример
  59. 62. Фичи vs Профиль <ul><li>Старайтесь не хранить права в фиче, кроме тех, что определяют логику ее работы.
  60. 63. Невозможно хранить элементы меню с не уникальными путями в фиче. </li></ul>
  61. 64. Вспомогательные модули <ul><li>Features override:
  62. 65. http://drupal.org/project/features_override
  63. 66. Profiler:
  64. 67. http://drupal.org/project/profiler
  65. 68. http://drupalcode.org/project/profiler_example.git/blob/HEAD:/profiler_example.info </li></ul>
  66. 72. Куда выкладывать дистрибутив? <ul><li>Исходный код – на drupal.org
  67. 73. Собранный дистрибутив – на отдельный сайт </li></ul>
  68. 74. Локализация <ul><li>Делайте дистрибутив с английском языком в качестве основного
  69. 75. Переводите при помощи http://localize.drupal.org или
  70. 76. http://drupal.org/project/l10n_client </li></ul>
  71. 77. Пути создания дистрибутивов <ul>Вначале сайт, затем продукт: <li>Сайт создается быстро, но с ошибками и костылями.
  72. 78. Во время создания продукта фиксятся все ошибки и убираются костыли.
  73. 79. В итоге сайт и продукт имеют разную реализацию, что осложняет поддержку сайта-прототипа.
  74. 80. Такой подход лучше использовать, когда у вас мало времени, нет четкого ТЗ, или есть вероятность, того, что заказчик сайта будет вносить изменения. </li></ul><ul>Вначале продукт, затем сайт: <li>Создается продукт, решаются сложные технические задачи, идет время.
  75. 81. На базе продукта создается сайт, происходит тестирование и отладка.
  76. 82. В итоге готовы продукт и сайт, но потрачено значиельное колиество времени веремени.
  77. 83. Такой подход лучше использовать когда у вас есть четко составленное ТЗ, которое не будет меняться, и время. </li></ul>
  78. 84. <ul>Чем отличается пара программист и программа от пары программист и женщина? В первом случае идет разработка, внедрение, а затем сопровождение. А во втором – вначале идет сопровождение, а затем все остальное. </ul>
  79. 85. Сопровождение <ul><li>Бесплатное: </li><ul><li>Решение багов
  80. 86. Выпуск обновлений </li></ul><li>Платное: </li><ul><li>Поддержка
  81. 87. Хостинг </li></ul></ul>
  82. 88. Ресурсы <ul><li>http://drupaldistrowatch.com/
  83. 89. http://drupal.org/project/installation%2Bprofiles
  84. 90. http://drupal.org/project/drush
  85. 91. http://drush.ws/drush_windows_installer
  86. 92. http://drupal.org/project/drush_make
  87. 93. http://drupal.org/project/features
  88. 94. http://drupal.org/project/strongarm
  89. 95. http://drupal.org/project/features_override
  90. 96. http://drupal.org/project/profiler
  91. 97. http://localize.drupal.org
  92. 98. http://drupal.org/project/l10n_client </li></ul>
  93. 99. Спасибо за внимание! <ul><li>http://slideshare.net/dealancer
  94. 100. http://drupal.org/project/openacadept </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×