Авг
28
2010

Drupal. Помощник при написании новых модулей – Module Builder

http://drupal.org/project/module_builder

Полезный модуль. Позволяет легко и просто из консоли генерировать новые модули с уже объявленными хуками каких-либо функций. Плюс можно просто добавлять хуки в уже имеющиеся модули. Удобно тем, что не надо лезть каждый раз в документацию и смотреть какие и сколько переменных должны приходить в функцию при её объявлении.

Установка

drush dl module_builder

Этого достаточно для того, чтобы пользоваться им из консоли. Т.е. включать модуль в списке модулей не обязательно. Но если включить, то появится в админке страница, где через веб-интерфейс можно будет задать несколько параметров. Например какой текст вставлять в начале и в конце генерируемых модулем файлов. И помоему простой модуль тоже можно было сгенерировать. Но там всё равно не так уж удобно и не весь функционал. Так что лучше пользоваться из консоли. получится быстрее и проще.

Замечание: я пробовал версию 6.x-2.x-dev (2009-Nov-07). И эта версия программы не может получать список доступных хуков с сайта drupal. Описано об этом тут: http://drupal.org/node/618436
Решение простое: скачиваем файлик http://drupal.org/files/issues/hooks_processed.php_.txt Переименовываем его в hooks_processed.php и кладём в папку sites/default/hooks/
Команду drush mbdl не запускать, т.к. она попытается получить из инета свежий список возможных хуков, но в итоге ничего не получит и модуль не будет работать. Надеюсь, что это скоро исправят разработчики.

Примеры

drush mb my_module menu cron nodeapi taxonomy –build=all –write –go – создаст модуль my_module и сгенерирует файл my_module.module с объявленными функциями, имплементирующими хуки menu cron nodeapi taxonomy. Так же будет сгенерирован файл my_module.info А флаг –go автоматом включает модуль после его создания.

drush mb my_module –add install uninstall – добавляет в модуль my_module объявление хуков install и uninstall. причем если файла my_module.install раньше не было, то он автоматом будет создан.

Дополнительные функции

Вместе с этим модулем так же появились функции
drush dochooks Adds comment headers to hooks that need them in the given module.
drush docparams Adds params… WIP!
Но ни одна из них у меня не заработала.

Leave Your Comment