-
v2.0.2 Stable
released this
2026-06-05 11:33:01 +00:00 | 0 commits to main since this release2.0.2
Release date: 2026-06-05
Highlights
- Translations added for Spanish (Spain) and Catalan.
- WordPress minimum version corrected to 3.6 based on actual function usage.
Changed
- Minimum WordPress version updated from 4.1 to 3.6 (real minimum per wp-compat analysis: wp_unslash since WP 3.6).
- Tested up to WordPress 7.1.
- POT file regenerated via WP-CLI i18n — removed dead strings, corrected line references.
- Deploy script no longer includes docs/ in the distributable ZIP.
- Deploy script skips empty vendor/ directory when no production Composer dependencies exist.
Added
- Spanish (Spain) translation (es_ES).
- Catalan translation (ca).
Compatibility
- WordPress: 3.6 - 7.1
- PHP: 5.6 - 8.5
Tests
- PHP Coding Standards: 3.13.5
- WordPress Coding Standards: 3.3.0
- PHPStan: 2.2.2 (level 9)
- PHPUnit: 9.6.34
2.0.1
Release date: 2026-06-05
Highlights
- Major bugfix release addressing three critical issues found during pre-deploy audit.
Fixed
- Context cache not resetting between emails in the same PHP process (affected WP-Cron and REST batch sends).
- Duplicate Reply-To header injected when an existing Reply-To was present in the email.
- Migration hook only running on admin_init — missed WP-CLI activations and automated deployments.
- RFC 5322 display name quoting now applied only when the name contains special characters.
Added
- Developer filter wp_mail_replyto_context — override the detected email context.
- Developer filter wp_mail_replyto_header — override or suppress the Reply-To header per email.
- load_plugin_textdomain() registration for translation support on WordPress < 4.6.
- DNS domain validation per context with user-friendly warning messages.
- PHPUnit test suite (27 tests).
- bin/deploy.sh build script.
Changed
- Admin CSS now registered via wp_register_style() + wp_add_inline_style().
- enabled flag now handles boolean true in addition to string '1'.
- Multibyte-safe name length truncation (mb_strlen/mb_substr).
- CR-only header normalization added alongside CRLF.
Security
- sanitize_callback added to legacy option registrations (wp_mail_replyto_email, wp_mail_replyto_name).
Compatibility
- WordPress: 4.1 - 6.9
- PHP: 5.6 - 8.5
Tests
- PHP Coding Standards: 3.13.5
- WordPress Coding Standards: 3.3.0
- PHPStan: 2.2.2 (level 9)
- PHPUnit: 9.6.34
Downloads
-
v2.0.0 Stable
released this
2026-06-05 11:03:09 +00:00 | 1 commits to main since this release[2.0.0] - 2026-01-20
Major Release - Context-Based Reply-To Routing
This major release combines multiple enhancements including context-based email routing, security improvements, and Reply-To name support.
Added
- Context-based Reply-To routing - Configure different Reply-To addresses for different types of emails.
- Six email contexts: Default, Authentication & Security, Comments & Moderation, Users & Registration, System & Updates, WooCommerce.
- WooCommerce tab only visible when WooCommerce plugin is active.
- Intelligent context detection using backtrace analysis.
- Modern tabbed user interface using WordPress native nav-tab-wrapper.
- Visual status indicators on each tab (green = active with email, red = inactive or no email).
- Legend explaining status indicators for easy understanding.
- Enable/disable toggle for each context (except Default which is always active).
- Fallback chain: Specific context → Default context → Legacy settings.
- Detailed descriptions and examples for each context in the admin UI.
- Reply-To Name field - Now you can specify a name to display with the Reply-To email address (e.g., "Support Team support@example.com").
- Name sanitization with header injection prevention.
- Length validation for name field (255 characters maximum).
- Created uninstall.php for proper cleanup of plugin data on uninstallation.
- Implemented logging of configuration changes for security auditing (requires WP_DEBUG_LOG).
- Added DNS validation for email domains with user-friendly warnings.
- Enhanced email validation with additional security checks.
- Added success/error messages for better user feedback.
Changed
- Complete rewrite of settings page with modern tab-based interface.
- Email detection now uses backtrace analysis for accurate context identification.
- Settings structure changed from individual options to array-based configuration (wp_mail_replyto_contexts).
- Improved sanitization and validation for multiple contexts.
- Enhanced logging with context information in debug mode.
- Email header construction now supports both name and email format.
- Updated sanitize callback to use custom function with enhanced validation.
- Improved security documentation and code comments.
Security Enhancements
- Added explicit header injection prevention with defense-in-depth validation.
- Implemented strict RFC 5322 email format validation.
- Enhanced input sanitization with multiple validation layers.
Technical
- New database structure: Single serialized array instead of multiple options (more efficient).
- Backward compatible: Legacy options (v1.0.x) still work during migration period.
- Context detection covers: Password resets, comments, user registration, system updates, WooCommerce emails.
- Clean uninstallation: Removes all options including migration flags.
- Automatic migration from v1.0.x - Your existing settings are preserved in the Default context.
Compatibility
- WordPress: 4.1 - 6.9
- PHP: 5.6 - 8.5
Tests
- PHP Coding Standards: 3.13.4
- WordPress Coding Standards: 3.3.0
- Plugin Check (PCP): 1.4.0
Downloads
-
v1.0.3 Stable
released this
2026-06-05 11:02:15 +00:00 | 2 commits to main since this release[1.0.3] - 2025-04-08
Changed
- Compatible with WordPress 6.8.
- Improved functions documentation.
Compatibility
- WordPress: 4.1 - 6.9
- PHP: 5.6 - 8.5
Tests
- PHP Coding Standards: 3.12.1
- WordPress Coding Standards: 3.1.0
- Plugin Check (PCP): 1.4.0
Downloads
-
v1.0.2 Stable
released this
2026-06-05 11:01:21 +00:00 | 3 commits to main since this release[1.0.2] - 2024-11-02
Fixed
- Preparation for GlotPress.
Downloads
-
v1.0.1 Stable
released this
2026-06-05 10:58:51 +00:00 | 4 commits to main since this release[1.0.1] - 2024-10-31
Added
- Translation ready.
Downloads
-
v1.0.0 Stable
released this
2026-06-05 10:57:57 +00:00 | 5 commits to main since this release[1.0.0] - 2024-10-22
Added
- First version.
Downloads