putyourlightson / craft-campaign

Send and manage email campaigns, contacts and mailing lists in Craft CMS.
https://putyourlightson.com/plugins/campaign
Other
64 stars 24 forks source link

Multiple segments sendout #489

Open scandella opened 2 weeks ago

scandella commented 2 weeks ago

Feature Request

Some thoughts about the way multiple segments work in a sendout form. It says : "Only contacts that fulfill the criteria in all selected segments will receive the sendout" I often see clients that expect the other way around: send to all segments selected. A very common scenario is some segments that have the same fields with different choices. For instance, a segment that filters all the contacts that are male and live in city A and another that filters all the contacts that are male and live in city B. When these two segments are added to the sendout form, the contacts selected are zero, which is very confusing for the client. The only solution is to create a segment with all these criteria, but then many segments have to be created to cover all the combinations possible (one segment for males in city A and B, another for males in city A and C, etc.), whereas it will be very convenient to select Segment 1 + segment 4 + Segment 6 via the segment field in the sendout form. Could it be possible to have another segment field with the following rule: "All contacts that fulfill the criteria in each selected segment will receive the sendout".

Plugin Version

2.15.3

bencroker commented 2 weeks ago

Are you using Legacy segment types in Campaign 2? The condition builder (which is the only way to create segments in Campaign 3) currently only supports AND logic. According to https://github.com/craftcms/cms/discussions/11287, adding OR log is on the roadmap for Craft 6 (I was expecting it to come in Craft 5).

I understand why your users find the segment behaviour confusing, but I can’t change how it works without introducing a setting that is opt-in (to prevent a breaking change). I’m not keen on the idea of a second field that is essentially the same but with different logic. So the question then becomes whether a setting should be introduced that changes the behaviour globally, and how to communicate that.

scandella commented 1 week ago

So the question then becomes whether a setting should be introduced that changes the behaviour globally, and how to communicate that.

I think it could labeled as "segments batch". "Click for sending multiple segments in batch, otherwise only contacts that fulfill the criteria in all selected segments will receive the sendout"

bencroker commented 1 week ago

"Click for sending multiple segments in batch, otherwise only contacts that fulfill the criteria in all selected segments will receive the sendout"

That’s still not clear enough for my liking, but thanks for the suggestion. I’ll give it some more thought.