Installation
Install the plugin
Section titled “Install the plugin”From the WordPress dashboard
Section titled “From the WordPress dashboard”- Go to Plugins > Add New.
- Click Upload Plugin and choose the plugin zip file.
- Click Install Now, then Activate.
By FTP
Section titled “By FTP”- Extract the plugin zip.
- Upload the plugin folder to
/wp-content/plugins/. - Activate it from the Plugins screen.
With WP-CLI
Section titled “With WP-CLI”wp plugin install restrict-email-domain-wordpress.zip --activateWhat activation creates
Section titled “What activation creates”On activation the plugin:
- Adds the
redw_settingsoption with sensible defaults (blacklist mode, logging on, real-time validation on, 30-day log retention). - Creates the log table
{prefix}redw_logs. - Stores the installed version in the
redw_versionoption. - Schedules a daily cron event (
redw_cleanup_logs) to remove old log rows.
Activate your license
Section titled “Activate your license”- Go to Settings > Email Domain Restriction.
- Open the License tab.
- Enter your license key and activate it.
An active license enables automatic updates and support.
Deactivation and removal
Section titled “Deactivation and removal”- Deactivating clears the scheduled cleanup cron. Settings and logs are kept.
- Deleting the plugin runs the uninstall routine. It removes the log table, plugin options (
redw_settings,redw_license_key,redw_license_status,redw_license_data,redw_version), and the cron event only when Delete all plugin data when uninstalling is enabled under Settings > Advanced. If that option is off, your data is preserved on delete. On multisite, the same cleanup runs for each site in the network.
Log table structure
Section titled “Log table structure”Table: {prefix}redw_logs
| Column | Type | Description |
|---|---|---|
| id | mediumint(9) | Primary key |
| varchar(100) | Blocked email address | |
| domain | varchar(100) | Email domain |
| source | varchar(50) | Registration source that triggered the block |
| ip_address | varchar(45) | Visitor IP address |
| user_agent | text | Browser user agent |
| created_at | datetime | Timestamp |
Indexed columns: email, domain, source, created_at.

