При поднятии сайта на Drupal, встречаются ситуации, когда функционал предоставляемый нам модулями – не всегда удовлетворяет нашим требованиям, а по большому счёту требованиям заказчика. Для реализации тех или иных моментов в drupal существует возможность написания собственных модулей. Как пишется модуль – я сейчас вам продемонстрирую. Я не буду использовать «хуки»(только с той целью, что бы вы поняли принцип построения модуля, а не написание его функционала) а просто выведу какую-то информацию на странице сайта, и можно задать какое – нибудь условие вывода. Модуль Drupal состоит из 2х обязательных файлов:
- Название_модуля.info
- Название_модуля.module
Список значений файла «Название_модуля.info»
; $Id$ //если вы будете размещать свой модуль в массы на drupal.org – то сюда впишется вся инфа о модуле name = drupalfly //название модуля description = MynewDrupalFly module //описание модуля core = 6.x //для какого ядра Drupal предназначен package = other //в какой категории должен отображаться модуль в админке сайта
Так же можно задать зависимость модуля от другого модуля :
dependencies[] = block
Данная запись будет говорить о том, что для работы модуля необходим модуль «block»
Файл «Название _модуля.module» - отвечает за функционал модуля
<?php //модуль начинается с открывающего тега php $Id$ // если вы будете размещать свой модуль в массы на drupal.org – то сюда впишется вся инфа о модуле
Закрывающий тег php рекомендуется не записывать в модуле, после описания функционала модуля.
Для того, что бы наш модуль появился в админке сайта, достаточно создать лишь эти 2 файла.
Пишем модуль.
1.Идём по пути sites/all/modules/ - если у вас нет папки «modules» - то вам необходимо её создать.
2.Внутри папки «modules» - создаем ещё одну папку с названием вашего модуля.
3.Внутри папки с название вашего модуля создаём 2 файла, которые описаны выше: это «Название_модуля.info» и «Название_модуля.module». Не забываем только, что файлы необходимо сохранять в кодировке «UTF-8»
4.Содержимое файла «Название_модуля.info»
Содержимое файла «Название_модуля.module»
5.Идём в админку сайта, а именно «Управление->модули» и видим, что наш с вами созданный модуль, доступен для активации.
Включаем и сохраняем настройки. Естественно, что после включения модуля у нас на сайте ничего не произойдёт, так как функционал модуля у нас не написан.
Поэтому давайте для демонстрации, как я и говорил выше выведем какую-нибудь информацию и впишем условия для вывода этой информации. Открываем файл «Название_модуля.module» и напишем простейшее условие, например: Если пользователь использует браузер Mozzila Firefox – то выводим фразу «Вы используете браузер Firefox – демонстрация модуля», в противном случае выводим «Вы используете не Firefox, настоятельно рекомендую пользоваться именно им».
Проверяем работу, через «Firefox»
И через «Хром»
Как мы видим всё работает. Замечу, что это не совсем правильный модуль, он не использует хуки Drupal, в принципе для этого модули и нужны, про использование хуков в дальнейших уроках.
Комментарии (2)
А почему данный модуль выводит информацию самым первым?
Как вывести эту информацию в каком-либо регионе?
в данной статье лишь представлены файлы, которые необходимы для создания модуля. Далее вам необходимо использовать хуки, в частности для вывода информации в регионе вам необходимо создать блок, а именно использовать