Support » Plugin: Import and export users and customers » Send Email Action

  • Resolved nonprofitweb

    (@nonprofitweb)


    Thank you for your plugin. I am trying to understand your send email functionality because I need to send different emails based on if the user has been updated or is a new user, so I can’t use your template option (both types of updates may happen during an import, which is one feature your plugin provides that others don’t!). If the option “Activate WordPress Automatic Email…” is selected, my custom new user email is sent. I am using the wp_new_user_notification_email filter to customize the new user email.

    If “Deactivate WordPress Automatic Email…” is selected, no email is sent. Obviously, the “Activate WordPress Automatic Email…” is applying a send email filter. When I dive into the code, I see the send_email_change_email filter, and when I try to use this hook to modify the email, the email content is still the content of the new user notification email.

    Of course I can modify the new user notification to function how I need but I’m afraid this behavior may be a bug and may change in future versions.

    Can you please enlighten me on the best way to customize my email message?

    Thank you.

Viewing 15 replies - 1 through 15 (of 18 total)
  • Plugin Author Javier Carazo

    (@carazo)

    @nonprofitweb,

    Maybe the best way would be do some kind of option to choose if our email template is sent to:

    • every user being imported
    • only the one being created
    • only the one being updated

    What do you think?

    Plugin Author Javier Carazo

    (@carazo)

    This option now exists in the plugin, you can choose to send emails to:

    • every user being created
    • `

    • also to every user being updated

    Which problem do you have?

    Thread Starter nonprofitweb

    (@nonprofitweb)

    I think your options are good, but how I can hook into this to use my own email content and not use your templates?

    The purpose is for 2 reasons:
    a) I need it easy and “dummy proof” so the person doing the import doesn’t have to change templates. It all happens automatically based on the type of user that is being added/updated
    b) The content of a user updated email is different than a user added email
    c) If an import contains both updates and new users (which is one thing your plugin does that others don’t!), I need to determine which message and subject content to send.

    For now I have worked out a solution using the wp_new_user_notification_email hook combined with a meta key & value, but it really is a work around that relies on Excel macros and is somewhat open to human error.

    Plugin Author Javier Carazo

    (@carazo)

    Ok tell me which hooks you would like to include and we add it.

    I would also love the ability to send a different custom email template to existing users and new users on import. I have been trying to sort a work around for this problem.

    Plugin Author Javier Carazo

    (@carazo)

    @lightwavin,

    This can be interesting to develop.

    Anyway, we can include in a fast way so many hooks as you need if you tell which do you need.

    Hey Javier,

    Thanks for your reply. I’m not sure I know how to work with hooks, my abilities are not that advanced. I have a list of users, some existing and some new, and I wanted to notify existing users when their role (think it is user_role) gets updated and new users get a different email with their username and password. Currently on import, the new user email sends off ok, and existing users role gets updated fine with no email being sent to them. I tried to use the Notification plugin at the same time to fire an email to the existing users when their role gets updated, but it won’t do that for some reason (but it will when I update them manually). Does that make sense?

    Thread Starter nonprofitweb

    (@nonprofitweb)

    For me, hooks to filter the email being sent when a user is added and when a user is updated would work for me.

    ie:acui_update_user_email_notification
    acui_new_user_email_notification

    Thank you for your quick response and interest in adding this functionality.

    Plugin Author Javier Carazo

    (@carazo)

    @lightwavin,

    Sorry but make it and include it in the GUI is longer.

    I have added the filters we told with: @nonprofitweb

    $email_to = apply_filters( 'acui_import_email_to', $email, $headers, $data, $created );
    						$subject = apply_filters( 'acui_import_email_subject', $subject, $headers, $data, $created );
    						$body = apply_filters( 'acui_import_email_body', $body, $headers, $data, $created );
    						$headers_mail = apply_filters( 'acui_import_email_headers', array( 'Content-Type: text/html; charset=UTF-8' ), $headers, $data );
    						$attachments = apply_filters( 'acui_import_email_attachments', $attachments, $headers, $data, $created );

    Hope you enjoy it!

    Hey Javier,

    Thank you very much for your helpful replies. I a bit more of novice the @nonprofitweb, what would be my next steps to use the above hooks?

    Many thanks

    Also, is there a way to send out a test email from the Mail Options tab or any other area so I can send to client without actually doing an import?

    Thread Starter nonprofitweb

    (@nonprofitweb)

    I haven’t implemented these hooks yet but you can read more about hooks here:
    https://developer.wordpress.org/plugins/hooks/filters/

    In essence, to conditionally change the subject of an email based on whether a user was added or not, it would be something like this:

    function custom_csv_import_subject($subject, $headers, $data, $created){
    	if ($created) { //check if $created is true 
    		$subject = 'Welcome to our website';
    	}
    	else $subject = 'Your account has been updated';
    	return $subject;
    }
    add_filter( 'acui_import_email_subject', 'custom_csv_import_subject', 10, 4 );
    

    Hope this helps.

    Plugin Author Javier Carazo

    (@carazo)

    @lightwavin,

    No, but you can import your email and get the email that is sent there.

    Hi there
    Thanks for this fab plugin.
    I have imported all my users without sending an activation email because I wanted to send it at a later stage.
    Is there a way I can send the email (with their id and password) without having to re-import all the users?

    Thanks
    Yann, France

    Also, if I update the users, will their content already present remain (I am running a classified advert website)?

    Y

Viewing 15 replies - 1 through 15 (of 18 total)
  • The topic ‘Send Email Action’ is closed to new replies.