The current mass-subscribe interface only works on e-mail addresses. There is no (obvious) way to select a large number of users and subscribe them.

So, I figured out how to do it. I made Rules action to do the subscribe (to a particular list). I used Views to set up a table of users with filters so I could select users by role, etc. I used Views Bulk Operations to set up the button and checkboxes for actually subscribing someone.

The only thing I couldn't figure out was a good way to select the newsletter. I could get it to ask for a term ID (like "4") of the newsletter afterwards, which is extremely unfriendly. I could also pre-enter the data and pre-select a newsletter, which requires a separate button for each newsletter. Not ideal. This is a VBO problem, but if anyone knows a better way to do it, please speak up.

Anyway, I'm assigning this to myself as a reminder to get to eventually. However, if anyone beats me to setting up that documentation, I won't be offended.

CommentFileSizeAuthor
simplenews_VBO_subscribe.png20.85 KBDanZ

Comments

DanZ’s picture

Issue summary: View changes

Try to get image to show up.

tchopshop’s picture

Issue summary: View changes

Hello... I am attempting to do the same thing. I've set up a VBO view and component rule but I'm getting an error when I attempt to subscribe any users. I'm also using Simplenews 7.x-2.x.

The log has two error entries:
Notice: Undefined index: tid in simplenews_rules_action_subscribe() (line 207 of /srv/bindings/5aedb32a27834eda94c6bc46ed08703f/code/sites/all/modules/mail_modules/simplenews/simplenews_rules/simplenews_rules.rules.inc).

Then:
PDOException: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'newsletter_id' cannot be null: INSERT INTO {simplenews_subscription} (newsletter_id, snid, status, timestamp, source) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4); Array ( [:db_insert_placeholder_0] => [:db_insert_placeholder_1] => 1 [:db_insert_placeholder_2] => 1 [:db_insert_placeholder_3] => 1405257261 [:db_insert_placeholder_4] => rules ) in simplenews_subscription_save() (line 1702 of /srv/bindings/5aedb32a27834eda94c6bc46ed08703f/code/sites/all/modules/mail_modules/simplenews/simplenews.module).

I'm hoping you might be able to help somehow, because I'm at a loss!