Триггеры. Как их можно использовать?

Главные вкладки

Аватар пользователя VasyOK VasyOK 13 июля 2010 в 3:28

Собственно никогда раньше не пользовался триггерами. Хотя Триггер - это стандартный модуль Друпал.

Можете кто нибудь привести примеры (желательно полезные) как эту штуку можно использовать. Вопрос не конкретный и конкретных ответов не жду.

Комментарии

Аватар пользователя xxandeadxx xxandeadxx 13 июля 2010 в 4:01

на странице admin/build/trigger/node достаточно понятно написано что это такое. мощь триггеров в том, что сторонние модули могут сами добавлять триггеры и экшэны, чтобы с помощью них, без написания кода, можно было расширять возможности друпала.

если простым языком - триггер это аналог события в javascript (onclick, onload и т.п.), а экшэн это функция которая вызывается при наступлении события.

"VasyOK" wrote:
Можете кто нибудь привести примеры (желательно полезные)

например можно отправить письмо админу сайта при создании ноды (экшэн - Отправить почту, триггер - После сохранения нового сообщения). не будь триггеров, пришлось бы создавать модуль, реализовывать хуки (hook_nodeapi и hook_mail) и отправлять письмо.

ещё прмер - можно показать пользователю какое-то дополнительное сообщение при регистрации, мол "прочитайте правила" с ссылкой на правила (экшэн - Показать сообщение пользователю, триггер - После того как учетная запись пользователя будет создана). опять же, небудь триггеров, пришлось бы создавать модуль и писать скучный код Smile

http://www.maiboroda.ru/webmaster/ispolzovanie-triggerov-v-drupal/

странно что в переводе от drupaler.ru слово "триггеры" не переведено как "события", думаю было бы понятнее

Аватар пользователя ihappy ihappy 13 июля 2010 в 4:56

Добавлю.
Для расширения функционала можно поставить модуль rules.
Вот тогда будет полный улет.
МОжно удалять, создавать материалы, пользователей, награждать очками(если стоит модуль userpoints) или снимать очки. Можно бейджи давать за то или иное действие. Или за набор определенного количества очков.
Можно роли пользователей менять по определенным критериям.
В общем не заменимый модуль.
Если знаешь php то там можно создать любое правило на любое действие. В общем насколько фантазии хватит.