Advanced Email Domain Restriction

Descripcion

The Advanced Email Domain Restriction plugin provides a lightweight but powerful way to control which email domains are allowed to register on your WordPress site.

Key Features:

  • Allow-list Only: Restrict registrations to a specific list of trusted domains.
  • Bulk Upload: Import large lists of domains via CSV.
  • Domain Export: Download your allowed domains list for backup or analysis.
  • WooCommerce Support: Fully compatible with WooCommerce customer registration.
  • Form Plugin Support: Automatically validate email fields in Contact Form 7, WPForms, and Elementor Pro forms.
  • TLD & Full Email Support: Restrict registrations to specific TLDs (e.g., .com) or specific email addresses (e.g., user@example.com).
  • Case-Insensitive: Matches gmail.com regardless of how the user types it.
  • Custom Messages: Define your own error messages for restricted domains.

Screenshots

Installacion

  1. Upload the plugin files to the /wp-content/plugins/advanced-email-domain-restriction directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress.
  3. Use the Settings-> Domain Restriction screen to configure the plugin.

FAQ

How do I customize error messages?

You can customize the error messages for allowed and restricted domains in the plugin settings under the « Custom Messages » section.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Advanced Email Domain Restriction” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.4.1

  • Fix: Exclude /bridge directory and pnpm-lock.yaml from distribution zip via .distignore.

1.4.0

  • Feature: Rule type labels — each rule shows its type (Domain / TLD / Exact email / Wildcard) inline in the admin panel.
  • Feature: Live rule preview — shows an example address the rule will match as you type.
  • Feature: Test email checker — enter any address to instantly see if it would be Allowed or Blocked.
  • Feature: Wildcard rule support — *.example.com matches any subdomain of example.com.
  • Feature: Duplicate detection — duplicate rules are removed on save with an admin notice.
  • Feature: CSV import summary — import results now show Imported / Skipped duplicates / Invalid rows counts.
  • Enhancement: AEDR_Rule_Parser and AEDR_Rule_Matcher classes introduced for clean, testable validation logic.
  • Enhancement: CSV processor now accepts TLDs, exact emails, and wildcard rules in addition to plain domains.
  • Enhancement: PHPUnit unit tests added for all new classes.

1.3.0

  • Feature: Added support for TLD-based matching (e.g., allow all emails from .cz).
  • Feature: Added support for full email address matching (e.g., allow user@example.com).
  • Enhancement: Updated Admin UI with clearer descriptions and placeholders for new matching types.

1.2.0

  • Feature: Added Support for WPForms and Elementor Pro email field validation.
  • Feature: Added Support for Contact Form 7 email field validation.
  • Feature: Added Export to CSV feature for allowed domains.
  • Feature: Added CSV Bulk Upload for allowed domains.
  • Feature: Added client-side and server-side validation for file uploads.
  • Security: Hardened plugin with nonce and capability checks.
  • Security: Applied late escaping throughout the admin interface.
  • Security: Hardened CSV import logic against large files and malicious content.
  • Bug Fix: Fixed WooCommerce registration errors hook (changed from action to filter).
  • Enhancement: Added case-insensitive domain validation support.
  • Enhancement: Refactored to Clean Architecture (separated Validator and CSV Processor).
  • Enhancement: Settings are now cached for better performance.
  • Improvement: Cleaned up code and improved domain sanitization.

1.1.0

  • WooCommerce customer registration email domain check support added.

1.0.0

  • Initial release with support for allowed domains and custom error messages.