Thanks to visit codestin.com
Credit goes to github.com

Skip to content

πŸš€ A powerful, 100% free WordPress SMTP mailer with email logging, queue management, backup failover & modern dashboard. No premium upsells. Configure Gmail, Outlook, SendGrid, Mailgun & 15+ providers easily.

Notifications You must be signed in to change notification settings

boopathirbk/Polar-SMTP-Mailer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

34 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Polar Bear Icon Polar SMTP Mailer

WordPress Tested up to PHP License Donate

A lightweight, open-source WordPress SMTP plugin

Reliable email delivery for WordPress.
Features email logging, queue management, backup failover, and a modern dashboard.

Status


πŸ† Why Choose Polar SMTP Mailer?

Polar SMTP Mailer provides a complete email delivery solution:

  • βœ… 100% Free & Open Source - No premium tiers or feature locks
  • βœ… Email Logging - Complete history with search, filter, export
  • βœ… Backup SMTP Failover - Automatic switch when primary fails
  • βœ… Email Queue - Background processing with priority & retry
  • βœ… 15+ Provider Presets - Gmail, Outlook, SendGrid, Mailgun, and more
  • βœ… Password Encryption - AES-256-CBC with WordPress salts
  • βœ… GDPR Privacy Tools - Exporter, eraser, anonymization
  • βœ… Modern Dashboard - Statistics, charts, quick actions
  • βœ… Self-Healing Database - Automatic table creation & repair
  • βœ… Clean Uninstall Option - Remove all data on deletion

✨ Features at a Glance

Feature Description
πŸ“§ 15+ SMTP Providers Gmail, Outlook, Yahoo, SendGrid, Mailgun, Amazon SES, Hostinger & more
πŸ“Š Email Logging Complete history with search, filter, export (CSV/JSON)
πŸ”„ Email Queue Background processing with priority & retry logic
πŸ”’ Backup SMTP Automatic failover when primary fails
πŸ›‘οΈ Enterprise Security AES-256 encryption, rate limiting, CSRF protection
πŸ” GDPR Compliant Privacy exporter, eraser, and anonymization
🎨 Modern Dashboard Statistics, charts, and quick actions
β™Ώ Accessible WCAG AA compliant, screen reader friendly

πŸ“§ SMTP Configuration

Supported Providers

Provider Host Port (TLS) Port (SSL)
Gmail / Google Workspace smtp.gmail.com 587 465
Outlook / Microsoft 365 smtp.office365.com 587 -
Yahoo Mail smtp.mail.yahoo.com 587 465
Zoho Mail smtp.zoho.com 587 465
Hostinger smtp.hostinger.com 465 (SSL) 465
SendGrid smtp.sendgrid.net 587 465
Mailgun smtp.mailgun.org 587 465
Amazon SES email-smtp.[region].amazonaws.com 587 465
Brevo (Sendinblue) smtp-relay.brevo.com 587 465
Postmark smtp.postmarkapp.com 587 465
SparkPost smtp.sparkpostmail.com 587 -
SMTP.com send.smtp.com 587 465
Elastic Email smtp.elasticemail.com 2525 -
Mailjet in-v3.mailjet.com 587 465
Pepipost (Netcore) smtp.pepipost.com 587 465

Encryption Options

Type Port Recommendation
TLS 587 βœ… Recommended (STARTTLS)
SSL 465 Good alternative
None 25 ⚠️ Not recommended

πŸ“Š Email Logging

  • Complete History - Track all sent, failed, and queued emails
  • View Details - Full email content, headers, CC/BCC, attachments
  • Search & Filter - Find by recipient, subject, status, or date range
  • One-Click Actions - View, Resend, Delete individual logs
  • Bulk Operations - Delete multiple logs at once
  • Export - Download as CSV or JSON
  • Auto Cleanup - Configurable retention (default: 30 days)

πŸ”„ Email Queue System

Feature Description
Background Processing Via WP-Cron, no server impact
Batch Size Configurable (default: 10)
Processing Interval Configurable (default: 5 min)
Priority Support 1-10 scale for urgent emails
Retry Logic Up to 3 attempts on failure
Lock Mechanism Prevents duplicate processing
Test Bypass Test emails skip queue

πŸ›‘οΈ Security

Feature Implementation
Password Encryption AES-256-CBC with WordPress AUTH_KEY
CSRF Protection Nonces on all forms and AJAX
Authorization manage_options capability required
Rate Limiting 5 test emails per 10 minutes
Input Sanitization All inputs sanitized
Output Escaping All output escaped (XSS prevention)
SQL Injection Prepared statements everywhere

πŸ” Privacy & GDPR

  • βœ… WordPress Privacy Exporter integration
  • βœ… WordPress Privacy Eraser integration
  • βœ… Email anonymization option
  • βœ… Content exclusion from logs
  • βœ… Auto-suggested privacy policy text
  • βœ… Configurable data retention

🎨 Modern Dashboard

  • πŸ“ˆ Email statistics (Today, Week, Month, All-time)
  • πŸ“Š Visual charts with daily trends
  • ⚑ Quick actions (Test email, View logs, Settings)
  • πŸ”Œ Connection health indicator
  • πŸ“¬ Real-time queue counter
  • πŸ“± Fully responsive design

πŸ“₯ Installation

From GitHub

# Download and extract to wp-content/plugins/
git clone https://github.com/boopathirbk/polar-smtp-mailer.git

From WordPress

  1. Plugins β†’ Add New β†’ Upload Plugin
  2. Upload the ZIP file
  3. Activate and configure at Polar SMTP β†’ Settings

βš™οΈ Quick Setup

  1. Navigate to Polar SMTP β†’ Settings
  2. Select your SMTP provider from dropdown
  3. Enter your credentials (username/password)
  4. Click Test Connection to verify
  5. Send a test email to confirm delivery
  6. Save Settings

πŸ”§ Requirements

Requirement Version
WordPress 6.0+
PHP 7.4+
MySQL 5.6+ / MariaDB 10.0+
OpenSSL Required for encryption

πŸ§‘β€πŸ’» Developer Hooks

Add Custom Provider

add_filter( 'psm_smtp_providers', function( $providers ) {
    $providers['my_provider'] = array(
        'name'       => 'My Custom Provider',
        'host'       => 'smtp.example.com',
        'port'       => 587,
        'encryption' => 'tls',
        'auth'       => true,
    );
    return $providers;
});

Bypass Queue for Urgent Emails

add_filter( 'psm_bypass_queue', function( $bypass, $atts ) {
    if ( strpos( $atts['subject'], 'Urgent' ) !== false ) {
        return true; // Send immediately
    }
    return $bypass;
}, 10, 2 );

πŸ“Έ Screenshots

Dashboard Settings
Dashboard Settings
Email Logs Test Email
Logs Test

πŸ“ Changelog

1.0.5 (2025-12-17)

  • Compliance: Removed promotional/comparative language from readme files.
  • Compliance: Added External Services section for SMTP provider documentation.

1.0.4 (2025-12-11)

  • Compliance: Fixed global variable naming conventions in admin views.
  • Compliance: Fixed hook naming conventions.
  • UI: Enhanced email log modal with From Email tracking and grid layout.
  • UI: Improved modal responsiveness for mobile devices.
  • Fix: Backup SMTP connection test and result styling.
  • Fix: Uninstall cleanup.

1.0.3 (2025-12-10)

  • Removed debug logging for compliance.

1.0.2 (2025-12-10)

  • Fixed HTML email display in log viewer.
  • Fixed empty recipient validation in queue.
  • Improved PHP 8.2 compatibility.

1.0.1 (2025-12-10)

  • Security fixes (Encryption, SQL prep).
  • Fixed race condition in queue processing.
  • TLS 1.2/1.3 support.

1.0.0 (2025-12-06)

Initial Release:

  • SMTP configuration with 15+ provider presets
  • Email logging with View, Resend, Delete actions
  • Email queue with background processing
  • Backup SMTP failover
  • GDPR-compliant privacy features
  • Modern admin dashboard with statistics
  • AES-256-CBC password encryption
  • Rate limiting and security features
  • Hostinger SMTP sender fix
  • Self-healing database
  • Clean uninstall option
  • Full i18n support

🀝 Contributing

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/Amazing)
  3. Commit changes (git commit -m 'Add Amazing Feature')
  4. Push to branch (git push origin feature/Amazing)
  5. Open a Pull Request

πŸ“„ License

GPL v2 or later - see LICENSE for details.


πŸ‘¨β€πŸ’» Author

Boopathi R.


β˜• Support This Project

If you find this plugin useful, consider buying me a coffee!

Donate with PayPal


Made with ❀️ for the WordPress community

About

πŸš€ A powerful, 100% free WordPress SMTP mailer with email logging, queue management, backup failover & modern dashboard. No premium upsells. Configure Gmail, Outlook, SendGrid, Mailgun & 15+ providers easily.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published