Books-CMS.clan.su


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Добавление параметров для конкретного модуля

В Drupal поддерживается множество различных типов нод (в пользовательском интерфейсе они называются типами контента (content type)), такие как статьи и базовые страницы.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Определение собственного раздела администрирования

В Drupal имеется несколько категорий административных параметров — например, для управления контентом и управления пользователями — которые выводятся на странице Configuration (Конфигурация). Если для какого-то модуля нужна особая категория, ее нетрудно создать. В нашем примере мы создадим новую категорию с названием Node annotation (Аннотирование ноды). Для этого потребуется создать хук для меню модуля и определить новую категорию:


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Вывод формы параметров пользователю

В модуле аннотирования администратору предоставлена возможность указать, какие типы нод должны поддерживать аннотирование. Рассмотрим этот механизм.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Хранение параметров

В приведенном ниже разделе выполняется изменение значений и щелчок на кнопке Save configuration (Сохранить конфигурацию).


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
События и триггеры

Обычно при работе с Drupal требуется каким-то образом реагировать на определенные события. Например, администратору сайта может понадобиться почтовое сообщение об отправке посетителем текста на сайт. Или следует заблокировать пользователя, если он употребляет недопустимые слова. В данной главе описано, как реагировать на события Drupal с помощью собственного кода.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Действия

Действие (action) — это что-то, выполняемое Drupal.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Использование контекста в действиях

Итак, мы знаем, что сигнатура функций для действий имеет вид example_action($object, $context). Рассмотрим каждый из этих параметров.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Хранение действий

Действия — это функции, которые выполняются в указанный момент. Для простых действий не нужны конфигурируемые параметры. Например, созданное ранее действие Beep просто выдает звуковой сигнал. Ему не нужна никакая дополнительная информации (хотя, разумеется, параметры $object и $context доступны). Сравните это действие с также созданным нами расширенным действием Beep multiple times (Несколько гудков): ему необходимо знать, сколько нужно звуковых сигналов. Другим расширенным действиям, вроде Send e-mail (Послать почтовое сообщение), может потребоваться еще более информации: адресат, тема сообщения и т.д. Эти параметры должны храниться в базе данных.


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Непосредственный вызов действия с помощью actions_do()

Модуль триггера — это лишь один из способов вызова действий. Может понадобиться написать отдельный модуль, который сам вызывает действия и подготавливает для них параметры. В таком случае для вызова действий рекомендуется функция actions_do().


CMS Drupal 7 РУКОВОДСТВО ПО РАЗРАБОТКЕ СИСТЕМЫ УПРАВЛЕНИЯ ВЕБ-САЙТОМ:
Определение собственных триггеров с помощью hook_trigger_info()

Каким образом Drupal узнает, какие триггеры доступны для вывода в пользовательском интерфейсе? Обычно Drupal позволяет модулям определять хуки с объявлениями, какие триггеры реализованы в этих модулях.



Бесплатный конструктор сайтов - uCoz