All Features
Email Campaigns
Send targeted email campaigns with templates and scheduling
Overview
Email marketing campaign system for sending bulk emails to subscribers and users. Supports email templates, audience segmentation, A/B testing, scheduling, and comprehensive analytics. Integrates with subscriber system and email tracking for full campaign lifecycle management.
Design Considerations
UX patterns and visual design notes for this feature:
- •Campaign builder should have drag-drop editor
- •Preview emails across devices before sending
- •Show estimated send time for large lists
- •Pause/resume functionality for long campaigns
- •Clear success/failure status per recipient
Key Benefits
What makes this feature stand out:
- ✓Visual email template builder
- ✓Audience segmentation and targeting
- ✓A/B testing for subject lines and content
- ✓Schedule campaigns for future sending
- ✓Comprehensive analytics (opens, clicks, conversions)
- ✓Integration with subscriber lists
- ✓Queue-based sending for reliability
EmailCampaign model defines campaign. EmailCampaignRecipient tracks per-recipient status. Use queue system (yii2-queue) for async sending. CampaignHelper::send() initiates campaign. Template variables support {{name}}, {{email}}, etc. Integrates with EmailTracking for analytics.
Helpers
CampaignHelperEmailHelperEmailTrackingHelperModels
EmailCampaignEmailCampaignRecipientSubscriberDatabase Tables
email_campaignemail_campaign_recipientsubscriberemail_trackingConfiguration
Config Relationship Legend
params.php Configuration
Config path: params['campaigns']
params['features']['campaigns'] => trueparams['campaigns']['defaultFrom']['email'] => 'noreply@example.com'params['campaigns']['defaultFrom']['name'] => 'Our Company'params['campaigns']['batchSize'] => 100params['campaigns']['throttleDelay'] => 1params['campaigns']['enableABTesting'] => trueDatabase Settings (system_setting table)
| Key | Type | Description | Relation |
|---|---|---|---|
campaign_from_email | string | Default sender email | ⚙ |
campaign_batch_size | number | Emails per batch | ⚙ |