On GateOverflow, we observed a common user pattern:
-
Users are highly active for the first 1–2 years and want all site emails
-
Over time, activity reduces and users prefer only specific updates
-
Some users want only Test Series notifications, while opting out of everything else
-
Others want important admin emails no matter what
Unfortunately, the default Question2Answer email system does not provide this level of control.
To solve this, the GateOverflow team has developed a custom Email Management Plugin for Question2Answer that gives full control to both admins and users over email notifications.
The plugin introduces a managed email notification system where:
-
Admins define which email events exist
-
Admins decide which emails are mandatory
-
Users decide exactly which emails they want to receive
Admin Features
-
Add, edit, activate, or deactivate email event types
-
Configure:
-
User-visible label
-
Email subject (direct text or language key)
-
Forced emails (cannot be unsubscribed)
-
Minimum user level required to see that email event
-
Dynamic “Add Event” system from admin panel
-
Default email events auto-created on plugin install
User Features
-
New “Email Preferences” section on the Account page
-
Enable or disable emails event-by-event
-
Option to receive remaining unmanaged emails
-
Smart defaults for newly registered users
Email Sending Logic
The plugin overrides qa_send_notification() and follows this logic:
-
Identify email subject / event
-
If active & forced → send email
-
Load user preferences
-
If inactive or unmanaged, check “other emails” preference
-
If active & managed, check if user enabled the event
-
Otherwise → skip sending email
This ensures zero unwanted emails, without losing critical communications.
Interested users can download the plugin from the GitHub repository: https://github.com/GATEOverflow/q2a-email-management