backdrop-ops / backdropcms.org

Issue tracker for the BackdropCMS.org website
https://backdropcms.org
25 stars 20 forks source link

Add checkbox opt-in to email newsletters #504

Open jenlampton opened 5 years ago

jenlampton commented 5 years ago

Since we allow people to opt into the security list on b.org, we should also allow them to opt in to our newsletter. Easy management in one place, please!


PR: https://github.com/backdrop-ops/backdropcms.org/pull/535

stpaultim commented 5 years ago

I think this should be a pretty high priority item. We need to make building our email list a priority (in my opinion). How can I help?

serundeputy commented 5 years ago

working on this. Here is the idea as a single checkbox on user profile:

image

jenlampton commented 5 years ago

I'll need the MC api key and list ID before final deploy

Can you tell me where these can be found? I'm guessing in mailchimp, but if you have just found them maybe it's easy to note some directions as to where :)

olafgrabienski commented 5 years ago

if someone checks the box and saves profile it sends POST req to mailchimp api and signs them up for the backdropcms.org mailing list

After that, do people have to confirm the subscription, and/or do they get information about how to unsubscribe again? Looking at the form, it seems obvious that you can uncheck the option again, but I'm not sure if that's sufficient in regard to data privacy rules. Does anyone know?

jenlampton commented 5 years ago

I think a double-opt in email will be sent from MC after sign up People can also unsubscribe form any email from the links in the email footer.

oadaeh commented 5 years ago

I have a few comments to add to this discussion. (Oh, no! Not him again!)

I think this should be a pretty high priority item. We need to make building our email list a priority (in my opinion).

A higher priority item is to actually use the list. If the list isn't used, it's worthless, and there is no point in building it. I've been subscribed since late November, and I've only received a single newsletter. A newsletter should be sent out at least weekly, otherwise the list goes stale, and then even the 250-300 are not really the active or engaged subscribers and they start to drop off. Where's the issue for sending newsletters?

Can you tell me where these can be found? I'm guessing in mailchimp, but if you have just found them maybe it's easy to note some directions as to where :)

After that, do people have to confirm the subscription... I think a double-opt in email will he sent from MC after sign up...

I'm not sure what you mean by a double opt-in. What happens is that after you sign up or subscribe, MailChimp sends a confirmation email to the subscribed email address. Then you have click the link in the email to confirm you really want to be subscribed.

People can also unsubscribe form any email from the links in the email footer.

I like to see a Manage Subscriptions (or similar) link in the footer along with the Unsubscribe link. I haven't actually done that, so I don't know how it is done, but I can research it and find out. I think having just an Unsubscribe link that just removes someone from the list without giving them the option for reviewing their subscriptions possibly encourages people to unsubscribe simply because they don't know what their options are or what they are subscribed to. I far prefer going to a Manage Subscriptions page before Unsubscribing, but if someone doesn't give me the option, I will probably just unsubscribe where I might not have otherwise.

serundeputy commented 5 years ago

Deploy

// Mailchimp dev api creds.                                                         
$settings['mailchimp_key'] = 'REPLACEME_WITH_API_KEY';               
$settings['mailchimp_borg_list'] = 'REPLACE_ME_WITH_LIST_ID;

Once the API key is known we'll need to update the usXX part of the API url calls too.

Confgiuration Management Figure 8

@jenlampton not sure how to use the config management figure 8 any more; here is the commit for the checkbox on user profile

https://github.com/backdrop-ops/backdropcms.org/pull/535/commits/1ab3f9b2a1423f161ce8dfa567c896bca2f42ac7

If that is incorrect i'll need to know how to point to the config directories in settings.local.php (currently I'm not pointing them at all).

PR: https://github.com/backdrop-ops/backdropcms.org/pull/535

stpaultim commented 5 years ago

@oadaeh - Good points.

A higher priority item is to actually use the list. If the list isn't used, it's worthless, and there is no point in building it. I've been subscribed since late November, and I've only received a single newsletter.

It's a bit of a chicken and egg situation. It's hard to justify putting much effort into creating a newsletter for such a small audience. But, your correct, we need to be more regular in using it. This has been discussed for a while, I think we're in the process of taking action on it now. Addressing both the frequency of the newsletter along with how to grow the audience.

Where's the issue for sending newsletters?

https://github.com/backdrop-ops/backdropcms.org/issues/177

jenlampton commented 5 years ago

@serundeputy thanks for the PR, I've merged it!

I've also left a bunch of feedback on the PR, and followed the merge some minor code cleanup. I don't think I've broken anything -- but can you have another look and let me know if it looks alright to you?

jenlampton commented 5 years ago

I have deployed this code to live (along with some other changes) but the module is not yet enabled. As soon has @serundeputy has a chance to take a look, and as soon as I figure out where to get the codes we need for settings.php, we can turn it on!

serundeputy commented 5 years ago

@jenlampton your changes look good to me. the keys needed for mailchimp API are obtained from logging into the maiilchimp account dashboard.

we'll also need to update the API call urls https://github.com/backdrop-ops/backdropcms.org/blob/master/www/modules/custom/borg_mailers/borg_mailers_mailchimp/borg_mailers_mailchimp.module#L71 based on the MC API key to reflect the correct server.

quicksketch commented 5 years ago

Once the API key is known we'll need to update the usXX part of the API url calls too.

The end of the API key is -us7

I've placed the mailchimp_key and mailchimp_borg_list values into settings.php on backdropcms.org.

jenlampton commented 5 years ago

Thank you @quicksketch! Did you happen to see what API call URLs we need to be using when you were in there, too? I think as soon as we sort those out we can enable the module.

serundeputy commented 5 years ago

@quicksketch @jenlampton new PR for updated apiUrls https://github.com/backdrop-ops/backdropcms.org/pull/537

serundeputy commented 5 years ago

@jenlampton mentioned in outreach meeting today, 16 May 2019, that this needs additional testing.

I tested locally; testing on the server I'm not sure how we want to do, but I'm glad to do additional testing if I know what to do/test.

jenlampton commented 4 years ago

Since we are no longer using mailchimp we could hold off on this until our Civi instance is set up. Or, @serundeputy since you are so good at API stuff we could rework this module to integrate with MailGun instead: https://documentation.mailgun.com/en/latest/api_reference.html

But only if you find this kind of thing fun and enjoyable! :)