Могу ли я использовать модуль "Правила" для массовой рассылки электронных писем авторам выбранных узлов?


Как я могу использовать модуль Правил для поиска узлов, в которых поле CCK имеет определенное значение, и при обнаружении отправить электронное письмо авторам этих узлов?

Например, если бы я хотел, чтобы люди входили в систему и обновляли свой профиль при добавлении нового поля CCK, как бы я это сделал?

 3
Author: Kevin, 2011-03-08

6 answers

Если вы хотите использовать для этого правила, вам придется создать свое собственное событие: при добавлении поля CCK. Затем вам нужно будет написать некоторый код для запуска события then при добавлении нового поля CCK и предоставить правила с узлами этого типа или любыми данными, которые вам понадобятся в вашем правиле.

Я предполагаю, что объем пользовательского кода, необходимого для этой работы, будет больше, чем нужно, чтобы просто сделать это самостоятельно в пользовательском модуле с hook_mail. Также у вас могут возникнуть проблемы настройка правила для выполнения того, что вам нужно. Я не пробовал использовать массив типов данных в правилах, так что это может усложнить ситуацию и для вас.

 1
Author: googletorp, 2011-03-09 08:55:28

Просто еще один бит ввода здесь: http://www.midwesternmac.com/blogs/jeff-geerling/sending-thousands-automated-sc

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

Конечно, как только вы достигнете масштаба сотен или тысяч электронных писем, вы можете начать рассматривать возможность использования внешнего ресурса, такого как Amazon SES. Я предполагаю, что вы не совсем на этом уровне:-)

 1
Author: geerlingguy, 2011-03-09 15:54:10

Статья, которую я только что написал об объединении правил и API очереди для Drupal 7, выглядит следующим образом: Использование правил и API очереди для пакетной отправки массовых писем.

 1
Author: Jide, 2011-04-30 04:08:42

Вы могли бы выполнить это с помощью правил и Просмотров массовых операций . Следующий скринкаст может помочь вам начать: NodeOne рассказывает о Drupal: Правила + VBO, пересмотрено!

 1
Author: Craig Hyatt, 2011-04-30 04:09:56

Взгляните на модуль Почта доступа к контенту (раскрытие информации: Я сделал это). Вот некоторые подробности об этом со страницы проекта:

Он предоставляет действие для модуля Правил, которое позволяет отправлять электронные письма на основе правил всем пользователям с разрешением на просмотр определенного узла.

Он почти делает то, что вы хотите, поэтому, следуя комментарию @googletorp об использовании hook_mail, это может дать вам преимущество в создании собственного модуля.

 1
Author: Greg, 2015-12-01 12:09:16

Я верю, что вы можете создать представление (используя модуль Представления ) узлов (с их авторами), для которых вы хотите отправлять такие электронные письма. После того, как вам удалось создать такое представление, продолжайте так:

  1. Используйте Просмотр массовых операций , чтобы включить массовые операции для каждого результата в вашем представлении.
  2. Создайте компонент правил, который использует Правила действие "Отправить сообщение". Если вы хотите, добавьте 2 "переменные" в этот компонент правил с именем что-то вроде "msgsubject" и "msgbody". Поступая таким образом, вы можете использовать эти переменные в качестве "маркеров" для построения фактической темы и текста вашего сообщения.
  3. В настройках VBO просто выполните этот компонент Правил. Если вы затем используете это представление VBO, вы можете указать желаемые значения для переменных, используемых для создания компонента правил (например, "msgsubject" и "msgbody"). Таким образом, вы избегаете жесткого кодирования " Тема" и " Тело" для действия "Отправить сообщение" (без эти переменные позволят вам отправлять только предопределенные сообщения). И это просто с помощью этих переменных вашего компонента правил (для реализации этой "Темы" и "Тела" сообщения). Таким образом, каждый раз, когда вы используете свой VBO для отправки таких сообщений, вы можете ввести желаемую "Тему" и "Тело" для каждого из этих сообщений.

Для некоторых других иллюстраций использования VBO в сочетании с компонентами правил обратитесь к ответам на эти вопросы:

 0
Author: Pierre.Vriens, 2017-04-13 12:46:55