Advanced Email Domain Restriction

الوصف

Advanced Email Domain Restriction (AEDR) gives you full control over who is allowed to create an account on your WordPress site. Instead of letting anyone register with any email address, restrict registration to a trusted allow-list of company domains, specific email addresses, top-level domains (TLDs), or wildcard subdomains — and stop spam registrations, fake accounts, and unauthorized signups before they happen.

Whether you run a company intranet that should only accept @yourcompany.com addresses, a course platform that should only enroll students with a .edu email, or a membership site that wants to block free webmail providers, AEDR gives you a simple allow-list-based way to enforce it — with no regex or code required.

Common Use Cases

  • Restrict registration to your company domain — only allow @yourcompany.com emails to sign up for an internal site, intranet, or extranet.
  • Block spam and fake account registrations — stop bots and throwaway/disposable email signups by only accepting domains you trust.
  • Gate course or membership access by email domain — for example, only allow .edu addresses to register for a student-only LearnDash course, or restrict a corporate LMS to employee emails.
  • Control WooCommerce customer registration — prevent unauthorized signups on your WooCommerce store at checkout or account creation.
  • Enforce domain rules across every registration form on your site — WooCommerce, LearnDash, BuddyPress, MemberPress, Paid Memberships Pro, Contact Form 7, WPForms, Elementor Pro, Gravity Forms, and Fluent Forms all respect the same allow-list.

Key Features

  • Allow-list Only: Restrict registrations to a specific list of trusted domains, exact email addresses, TLDs, or wildcard subdomains.
  • 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 & Field Plugin Support: Automatically validate email fields in Contact Form 7, WPForms, Elementor Pro, Gravity Forms, Fluent Forms, and Advanced Custom Fields (ACF).
  • LMS & Membership Support: Works with LearnDash, Tutor LMS, BuddyPress / BuddyBoss, MemberPress, and Paid Memberships Pro registration flows.
  • TLD & Full Email Support: Restrict registrations to specific TLDs (e.g., .com) or specific email addresses (e.g., user@example.com).
  • Wildcard Subdomain Support: A rule like *.example.com matches both example.com and any subdomain, such as sales.example.com.
  • Case-Insensitive: Matches gmail.com regardless of how the user types it.
  • Custom Messages: Define your own error messages for restricted domains.
  • Live Test Checker: Instantly test any email address in the admin panel to confirm whether it would be allowed or blocked.
  • No Regex, No Code: Every rule type is entered as plain text — no technical knowledge required.

لقطات الشاشة

التنصيب

  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.

الأسئلة المتكررّة

How do I restrict WordPress registration to a specific domain?

Go to Settings Domain Restriction and add the domain (e.g. yourcompany.com) to the Allowed Domains list. Once saved, only email addresses ending in @yourcompany.com will be able to register — every other domain is blocked automatically.

Can I block specific email providers like Gmail, Yahoo, or Outlook?

Yes. Since AEDR works as an allow-list, simply don’t include gmail.com, yahoo.com, outlook.com, or any other webmail domain in your allowed list, and registrations from those domains will be blocked. This is a common way to reduce spam and fake account signups.

Can I allow an entire top-level domain (TLD), like all .edu or .gov addresses?

Yes. Add a rule starting with a dot, such as .edu or .gov, and any email address ending in that TLD will be allowed, regardless of the domain in front of it.

Can I allow only one specific email address instead of a whole domain?

Yes. Add the full address (e.g. john@example.com) as a rule, and only that exact email will be allowed to register — useful for granting a single exception.

Does wildcard subdomain matching work?

Yes. A rule like *.example.com allows both example.com itself and any subdomain such as team.example.com or sales.example.com.

Does this plugin support WooCommerce customer registration?

Yes. AEDR hooks directly into WooCommerce’s registration process, so the same domain rules apply whether a customer registers through the standard WordPress form or through WooCommerce’s My Account / checkout registration.

Does this work with LearnDash?

Yes. AEDR validates the email domain on LearnDash’s Login & Registration modal as well as the default WordPress registration form, so students can only register with an approved email domain — useful for restricting course access to .edu or company email addresses.

Is BuddyPress or BuddyBoss registration supported?

Yes. AEDR validates the email domain during BuddyPress and BuddyBoss community signup, in addition to standard WordPress registration.

Does this work with MemberPress or Paid Memberships Pro?

Yes. Both MemberPress signup and Paid Memberships Pro registration/checkout are validated against your allowed domains list.

Which contact and form plugins are supported?

AEDR automatically validates email fields in Contact Form 7, WPForms, Elementor Pro forms, Gravity Forms, and Fluent Forms, using the same allow-list you configure once in Settings Domain Restriction.

Does this work on WordPress Multisite?

Yes. AEDR validates email domains during multisite user signup as well as single-site registration.

How do I customize the error message shown to blocked users?

You can customize the error message shown for restricted domains in the plugin settings under the “Custom Messages” section.

Can I bulk import or export my list of allowed domains?

Yes. Use the CSV Bulk Upload feature to import a large list of rules at once, and the Export to CSV feature to download your current list for backup or review.

Will this affect users who already have an account?

No. AEDR only validates email domains at the point of new registration. Existing user accounts are never affected, logged out, or deleted, even if their email domain is later removed from the allowed list.

Does this plugin help stop spam or fake registrations?

Yes. Because only email domains you explicitly trust can complete registration, AEDR is commonly used to block spam bots, disposable/throwaway email signups, and fake accounts that target open registration forms.

What happens if I don’t add any rules?

If no domains are configured, AEDR does not restrict registration — all email addresses are allowed, exactly as with a default WordPress install.

Does this plugin collect or share any personal data?

No. AEDR does not collect, store, or transmit any personal data to third parties. It only reads the email address submitted during registration to check it against the domain rules you configure yourself.

Will this plugin slow down my website?

No. AEDR is lightweight, performs a single fast comparison against your configured rules at the moment of registration, and adds no measurable overhead to page load or checkout speed.

المراجعات

12 أغسطس، 2026 1 reply
Very useful plugin, when you have a legal obligation to restrict domains or entire TLD zones for email registrations on your website. The interface is simple and clean.
إقرأ جميع المراجعات 1

المساهمون والمطوّرون

“Advanced Email Domain Restriction” هو برنامج مفتوح المصدر. وقد ساهم هؤلاء الأشخاص بالأسفل في هذه الإضافة.

المساهمون

ترجمة ”Advanced Email Domain Restriction“ إلى لغتك.

مُهتم بالتطوير؟

تصفّح الشفرة، تحقق من مستودع SVN، أو الاشتراك في سجل التطوير بواسطة RSS.

سجل التغييرات

1.5.0

  • Fix: LearnDash Login & Registration modal (and any other registration flow bypassing the standard registration_errors filter) no longer allows restricted email domains to register.
  • Feature: Added BuddyPress / BuddyBoss registration support.
  • Feature: Added MemberPress registration support.
  • Feature: Added Paid Memberships Pro (PMPro) registration support.
  • Feature: Added Gravity Forms email field validation support.
  • Feature: Added Fluent Forms email field validation support.
  • Feature: Added Tutor LMS student and instructor registration support.
  • Feature: Added Advanced Custom Fields (ACF) email field validation support.

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.