Integrates ROBOTSTXT SMTP configuration with Newsletter plugin for efficient bulk email delivery with SMTPKeepAlive support. https://git.robotstxt.es/ROBOTSTXT/robotstxt-smtp-newsletter
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-02-18 15:24:59 +00:00
admin v2.2.0 2026-02-18 15:24:59 +00:00
includes v2.2.0 2026-02-18 15:24:59 +00:00
languages v2.0.0 2026-01-29 10:02:03 +00:00
changelog.txt v2.2.0 2026-02-18 15:24:59 +00:00
index.php v2.0.0 2026-01-29 10:02:03 +00:00
LICENSE v2.0.0 2026-01-29 10:02:03 +00:00
readme.txt v2.2.0 2026-02-18 15:24:59 +00:00
robotstxt-smtp-newsletter.php v2.2.0 2026-02-18 15:24:59 +00:00
robotstxt-updater.php v2.2.0 2026-02-18 15:24:59 +00:00
uninstall.php v2.2.0 2026-02-18 15:24:59 +00:00
update.json v2.2.0 2026-02-18 15:24:59 +00:00
worker.php v2.2.0 2026-02-18 15:24:59 +00:00

=== SMTP (by ROBOTSTXT) Newsletter ===
Contributors: robotstxt
Tags: newsletter, smtp, email, bulk, queue, worker, amazonses, statistics
Requires at least: 4.7
Tested up to: 6.9
Requires PHP: 7.2
Stable tag: 2.2.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Integrates ROBOTSTXT SMTP configuration with Newsletter plugin for reliable bulk email delivery with database-backed queue and external workers.

== Description ==

SMTP (by ROBOTSTXT) Newsletter connects your Newsletter plugin with ROBOTSTXT SMTP and Amazon SES plugins, providing **reliable, scalable bulk email delivery** through a database-backed queue system with external worker processes.

= Key Features =

* **Database Queue**: Persistent email queue survives server restarts and crashes
* **External Workers**: CLI worker script for asynchronous processing independent of WordPress cron
* **Parallel Processing**: Run multiple workers simultaneously for high-volume campaigns
* **Automatic Retry**: Failed emails retry up to 3 times with exponential backoff
* **Real-Time Statistics**: Monitor queue status and campaign performance
* **Campaign Metrics**: Track speed, duration, success rate for each campaign
* **Amazon SES Support**: Native integration with Amazon SES API
* **Rate Limiting**: Respects ROBOTSTXT SMTP rate limits
* **Scalable**: Handle campaigns of any size with parallel workers

= Architecture =

**Version 2.2.0 introduces a queue-based architecture:**

* Newsletter campaigns are queued to database instead of sent immediately
* External worker processes pick up queued emails and send them via wp_mail()
* Statistics are tracked and preserved even after queue cleanup
* Multiple workers can run in parallel for high-volume sending

= Performance & Reliability =

**Reliability:**
* Emails persisted to database - no data loss on crashes
* Automatic retry with exponential backoff (5min → 15min → 30min)
* Stale lock recovery prevents stuck emails

**Scalability:**
* Support for 10+ parallel workers
* Process 10,000+ emails per hour with proper worker setup
* Campaign statistics track actual sending speed

**Monitoring:**
* Real-time queue status (pending, processing, sent, failed)
* Campaign metrics (start time, duration, speed, success rate)
* Detailed email queue view in admin

= Requirements =

* Newsletter plugin 9.0.0 or higher
* ROBOTSTXT SMTP plugin 2.0.0 or higher
* (Optional) ROBOTSTXT SMTP Amazon SES plugin 1.0.0 or higher
* CLI access for worker setup (cron or process supervisor)

= Setup =

**Installation:**
1. Install and activate the plugin
2. Go to Newsletter → SMTP (by ROBOTSTXT)
3. Enable integration and configure batch size

**Worker Setup (Required):**
Set up a cron job or process supervisor to run the worker:

`* * * * * php /path/to/wp-content/plugins/robotstxt-smtp-newsletter/worker.php 10 "w1"`

For parallel processing (10 workers):

`* * * * * seq 1 10 | xargs -P10 -I{} php /path/to/worker.php 10 "w{}"`

See Settings → SMTP → Queue Worker Configuration for detailed commands.

= Monitoring =

Access statistics via:
* **Newsletter → SMTP (by ROBOTSTXT)** - Queue status and recent campaigns
* **Newsletter → Email Queue** - View all queued and sent emails
* **Newsletter → Statistics** - Detailed campaign performance metrics

= Recommended Settings =

**For Standard SMTP Providers (SendGrid, Mailgun, etc.):**
* Batch Size: 10-20
* Max Per Connection: 50-100

**For Amazon SES:**
* Batch Size: 50

**For Gmail/Outlook:**
* Batch Size: 5
* Max Per Connection: 20

== Installation ==

1. Install and activate Newsletter plugin
2. Install and activate ROBOTSTXT SMTP plugin
3. Configure SMTP settings in ROBOTSTXT SMTP
4. Upload this plugin to `/wp-content/plugins/`
5. Activate the plugin through the 'Plugins' menu
6. Go to Newsletter → ROBOTSTXT SMTP to configure

== Frequently Asked Questions ==

= Do I need to configure SMTP settings? =

No. The plugin uses the SMTP configuration from ROBOTSTXT SMTP plugin.

= Does this work with Amazon SES? =

Yes! If you have ROBOTSTXT SMTP Amazon SES plugin active, this plugin will automatically use SES API for even better performance.

= Will this work with my current Newsletter campaigns? =

Yes. This plugin seamlessly integrates with Newsletter's sending engine. Your existing campaigns will automatically benefit from improved performance.

= What is SMTPKeepAlive? =

SMTPKeepAlive is a PHPMailer feature that keeps the SMTP connection open between emails. Instead of connecting for each email, one connection is used for multiple emails, dramatically improving speed.

= How much faster is this compared to default Newsletter sending? =

In typical scenarios, you'll see 20-30x performance improvement. For example:
* 10,000 emails: From 8-10 hours to 35 minutes
* 50,000 emails: From 2 days to 3 hours

= Does this respect rate limits? =

Yes. The plugin integrates with ROBOTSTXT SMTP rate limiting system to ensure you don't exceed your provider's limits.

== Changelog ==

= 1.0.0 =
* Initial release
* SMTPKeepAlive support for SMTP
* Amazon SES API integration
* Batch processing
* Settings page in Newsletter admin
* Rate limiting integration

== Upgrade Notice ==

= 1.0.0 =
Initial release of SMTP (by ROBOTSTXT) Newsletter.