如何以编程方式创建Drupal用户时如何发送电子邮件通知?

Wil*_*ill 6 drupal drupal-6

我正在尝试使用代码创建用户.我有以下创建用户.但是,它不会向用户发送电子邮件,说明该帐户已创建.我怎样才能做到这一点?

$newUser = array(
  'name' => 'username',
  'pass' => 'password', // note: do not md5 the password
  'mail' => 'email address',
  'status' => 1,
  'init' => 'email address'
);           
user_save(null, $newUser);
Run Code Online (Sandbox Code Playgroud)

mil*_*sky 28

您可以使用Drupal核心的"用户"模块中的标准_user_mail_notify()函数.

   // Create user.
   $new_user = array(
      'name' => $username,
      'pass' => $password, 
      'mail' => $email,
      'status' => 1,
      'init' => $email,
      'roles' => array(DRUPAL_AUTHENTICATED_RID => TRUE),
    );  
   $account = user_save(NULL, $new_user);
   // Set operation.
   $op = 'register_no_approval_required';
   // Send an email.
   _user_mail_notify($op, $account);
Run Code Online (Sandbox Code Playgroud)

$ op有不同的值:

 /* @param $op
 *   The operation being performed on the account. Possible values:
 *   - 'register_admin_created': Welcome message for user created by the admin.
 *   - 'register_no_approval_required': Welcome message when user
 *     self-registers.
 *   - 'register_pending_approval': Welcome message, user pending admin
 *     approval.
 *   - 'password_reset': Password recovery request.
 *   - 'status_activated': Account activated.
 *   - 'status_blocked': Account blocked.
 *   - 'cancel_confirm': Account cancellation request.
 *   - 'status_canceled': Account canceled.*/
Run Code Online (Sandbox Code Playgroud)


pas*_*ine -3

您可以使用规则。您可以添加创建用户时要触发的操作。