bbPress Notify (No Spam)


This plugin extends bbPress to send notifications via e-mail to selected roles when new topics or replies are posted. It also has options to override the
core bbPress notification templates, and is fully configurable in the bbPress settings.

Features include

  • Send notifications in HTML, Plain text, or Multipart format, with full image support.
  • Override bbPress’ core subscription messages with your own;
  • Set Notification recipient roles for new topics;
  • Set Notification recipient roles for new replies;
  • Set Notification e-mail’s subject and body for both new topics and replies;
  • Send Background Notifications (to avoid delays in loading pages for large user databases);
  • Extensible through almost 40 handy actions and filters;

Premium Add-Ons

Take your notifications to the next level with one or more of these add-ons.


We’ve made a parnership with, securing their SuretyMail Email certification (to make sure the email you send gets delivered to the inbox instead of the junk folder) for a fraction of the full price, and without the need to have a dedicated IP. Learn more about it here.


  • The settings page
  • Ability to send notification when managing topics/replies in the admin UI


  1. Upload the entire plugin folder via FTP to /wp-content/plugins/.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. Go to the Settings -> Forums and select which roles should get notifications.


Why am I not receiving notifications of a topic/reply that I created?
  • As of version 1.9.4, topic/reply authors no longer get notified of their own posts by default.
    • Version 1.12 and up have settings to decide whether authors get notified or not.
Where are the settings?
  • All settings are under Admin -> Settings -> Forums -> Email Notifications. It will get its own settings screen in the upcoming version 2.0.
Can a user turn off notifications?
  • Originally, this plugin was developed to alert Administrators of new topics and replies. After a few iterations, users requested the ability to send
    messages to other roles, which then could be characterized as spam. To allow your users to opt-out from receiving notifications, please consider purchasing
    the Opt-out Add-on.

    • As of version 1.12, you can use this plugin with bbPress Forum/Topic subscribers, instead of- or in addition to roles. Just turn on the Override option for Forums or Topics.
Does this plugin integrate with BuddyPress Groups?
Does this plugin integrate with X, Y, Z Membership/Privacy plugin?
  • We can’t add support for all sorts of third party plugins inside the core bbpnns plugin. It would become way too bloated. However, we do support some of the more popular membership and privacy plugins
    such as Private Groups, MemberPress and Ultimate Member. See the Premium Addons section above for the links to each one. If you’re using a different plugin and need support, reach out and let us know.
    We’ll look into adding it.
Can this plugin be customized?
  • If you have some WordPress coding experience, customizing should be really easy as we offer around 40 filters and actions. However, if you need help, reach out
    and let us know your specs for an estimate.


Unbelievable support, thanks so much!

Vinny tirelessly troubleshooted an issue that we had been experiencing for months. His responses were quick and gracious at all times. It would be difficult to find a plugin author more generous with their time. I’d be confident in recommending any of the UseStrict plugins. Thanks so much!

Recommended (Good plugins, GREAT developer support)

I have used this plugin and several of the developer’s associated plugins to add features and integrations to my sites. The plugins work great. The support is fantastic–Vinny went above and beyond to help me get everything set up properly. A great experience. Thanks!

Wonderful, competent, flexible Plugin

BBPNNS does EVERYTHING I want it to do (and more). I really like that it give me total freedom to give the Notifications MY voice when we notify our Forum users of activity.
And the choices for selecting which users to notify are very flexible.

Great support!!!

Great support!!!

A few, for me big, problems but Vinny has solved it for me.

And boys (and girls), do not forget to donate for this great job!

Thanks Vinny.

I think you have solved a very old bbPress problem…

Read all 23 reviews

Contributors & Developers

“bbPress Notify (No Spam)” is open source software. The following people have contributed to this plugin.




  • Improvement: Support for environments that do not provide mb_convert_encoding().


  • Fix: Fix PHP notice by setting default value to wp_mail_error property in case third-party mailers fail and don’t call the wp_mail_error action.


  • Fix: Correctly handle DOMDOcument calls on PHP older than 5.3.6.


  • Fix: Added back the filters to stop default notifications in some cases where removing the core notification action wasn’t working.


  • Fix: Future Publish was not working.
  • Fix: Better handling of blocking bbPress core notifications if Overrides is on, to make sure we don’t send out multiple messages (ours plus the default one).
  • Cleanup: Commented out some notifications code that are no longer relevant.


  • Updated Tested up to
  • Added improved admin notice code and bbpnns-rbe April/2018 promo.


  • Added support for topic-content and topic-excerpt tags in replies.
  • Added check and warning of needed bridge plugins to play nicely with supported membership/permission plugins.


  • Fix: notify_on_save was not handling future dated publishing at all.


  • Fix DOMDocument to work with non-UTF8 characters. Thanks to @yinbit for the testing environment.


  • Don’t assume UTF-8 loading the text in DOMDocument to process image CIDs and convert links.


  • Add support for embedded images in notifications.
  • Capture case when topic_id does not get passed to notify_new_reply()


  • Adjust parameters for send_notification().


  • Add post type, topic/reply id and forum id to send_notification() so they can be used in bbpnns_filter_email_body_for_user and bbpnns_filter_email_subject_for_user filters.

  • Fix: Removed debugging left behind in 1.15.9


  • Decode quotes in topics and body.


  • Refactor topic-url code in reply notifications to improve performance.


  • Added support for topic-title, topic-author, and topic-author-email tags in the reply subject.


  • Remove surety message.


  • Fix: apply bbpnns_topic_url filter when processing topic_url inside a reply as well.


  • Added: bbpnns_core_subscribers filter.


  • Added: topic-title, topic-author, and topic-author-email tags are now available in replies.


  • Fix: unchecked iconv function was breaking some installs.


  • Fix: Plain text mailouts had broken UTF-8 characters.


  • Added: bbpnns_is_in_effect filter to help identify if Core Overrides are on or if a user belongs to a notifiable role.


  • Fix: Correctly handling encoded entities.
  • Fix: Check that iconv_mime_encode is available before trying to use it.
  • Added: bbpnns signature in email headers to help with troubleshooting.


  • Fix: Multipart messages are now working nicely with Mailgun and regular wp_mail calls.
  • Added: HTML to text converter is now handling images, replacing the html with their alt value.


  • Fix: Mailgun is replacing our multipart/alternative header boundary, so now admins can chose whether to send HTML, Plain Text, or Multipart messages.


  • New: WYSIWYG emails, complete with automatic multipart text version for non HTML clients.
  • New: Added user-name tags support.


  • Fix: Bad copy/paste on previous commit, which replaced the body with the subject line.


  • New: Added tags to get topic and reply author email.


  • New: Take over notifications for bbPress’ Core Subscriptions
  • New: Decide whether authors must receive their own notifications or not


  • ISIPP/SuretyMail partnership announcement.


  • Added: calling set_time_out(0) if doing cron. This should help people who are not getting all mailouts sent due to too many recipients.


  • Minor bug fix: [topic-forum] and [reply-forum] tags were missing from list of available tags, although functionality was fine.
  • Add: [topic-url] is now available in replies, too.


  • New Feature: No longer add topic/reply author to the recipient list.


  • Fix: Replace mb_internal_encoding() with iconv_get_encoding() as at least one host didn’t have mb_string enabled.
  • Add: Admin option to enable or disable Subject line encoding. Admin -> Settings -> Forums -> E-mail Notifications -> Encode Topic and Reply Subject line.
  • Add: uninstaller.


  • Fix filters bbpnns_filter_email_subject_in_build and bbpnns_filter_email_body_in_build to pass $type and $post_id


  • New action: bbpnns_email_failed_single_user, allows for better handling of failed emails. Params: $user_info, $filtered_subject, $filtered_body, $recipient_headers
  • New action: bbpnns_before_wp_mail, executed immediately before wp_mail() call. Params: $user_info, $filtered_subject, $filtered_body, $recipient_headers
  • New action: bbpnns_after_wp_mail, executed immediately after wp_mail() call. Params: $user_info, $filtered_subject, $filtered_body, $recipient_headers


  • New Filter: bbpnns_skip_notification
  • New Filter: bbpnns_available_tags
  • New Action: bbpnns_after_email_sent_single_user
  • New Action: bbpnns_after_email_sent_all_users
  • Change: Only filter subject and body if user is OK to receive message
  • Change: Reduce DB calls by one per user
  • Change: stop using PHP4-style pass-by-reference. PHP5 always passes by reference now.
  • Change: Improve Encoding of subject line

  • Fix: added a workaround for emails with UTF-8 Characters in the subject line that weren’t being sent.


  • Added: support for people using wpMandrill and getting emails without newlines. We turn on nl2br momentarily while sending out our emails.
    This option can be overridden by using the filter ‘bbpnns_handle_mandrill_nl2br’.


  • Fix: no longer return if wp_mail fails for a given email address. This was an issue for people using wpMandrill with an address in the blacklist.


  • New Filter: bbpnns_post_status_blacklist
  • New Filter: bbpnns_post_status_whitelist
  • New Action: bbpnns_before_topic_settings
  • New Action: bbpnns_after_topic_settings
  • New Action: bbpnns_after_reply_settings
  • New Action: bbpnns_register_settings


  • Remove admin message as it’s not getting dismissed properly.
  • Update tested up to.


  • Fix parameters for ‘bbp_new_reply’ filter
  • Added call to ‘bbp_get_reply_forum_id()’ in case the forum_id was blank (should no longer happen with ‘bbp_new_reply’ filter fix)


  • Notify about existence of Opt-Out add-on


  • Added support for Opt-Out add-on
  • Added labels to all input fields


  • Added support for tags [topic-forum], and [reply-forum]. (Towfiq I.)

  • Removed Pro message.


  • Added subject filter in _build_email: bbpnns_filter_email_subject_in_build
  • Added body filter in _build_email: bbpnns_filter_email_body_in_build
  • Renamed filter: bbpnns-filter-recipients => bbpnns_filter_recipients_before_send
  • Renamed filter: bbpnns-filter-email-subject => bbpnns_filter_email_subject_for_user
  • Renamed filter: bbpnns-filter-email-body => bbpnns_filter_email_body_for_user


  • Added user-contributed filters: bbpress_reply_notify_recipients, and bbpress_topic_notify_recipients


  • Added filters: bbpnns-filter-recipients, bbpnns-filter-email-subject, and bbpnns-filter-email-body

  • Fixed: buggy dismiss link in previous commit.


  • Added notice about bbPress Notify Pro project at Kickstarter.


  • Fix bug where topic and reply post_types were not set in time to send post.
  • Only send notification if post_status is publish, besides not being spam.
  • Adjustments to notify_on_save
  • Added tests for notify_on_save


  • Passing $post_id and $title variables to filters added in 1.6.


  • Added support for filters ‘bbpnns_topic_url’, ‘bbpnns_reply_url’, and ‘bbpnns_topic_reply’


  • Improved Tests
  • Renamed some variables.


  • Fix: Make sure bbPress is installed and avoid race conditions when loading.


  • Fix: corrected missing newlines in topic/reply content email.


  • Fix: admin-only emails not working due to missed boolean casting.


  • Fixed bug, ‘hidden forum override reply’ setting not registered
  • Added filters: bbpnns_skip_topic_notification, bbpnns_skip_reply_notification, bpnns_excerpt_size, bbpnns_extra_headers


  • Added override option to only send emails to Admins in case a Forum is hidden.
  • Added tests


  • Tweak: make sure we have unique recipients. In some installs, duplicate emails were being sent.


  • Fixed: preg_replace error in some installs.


  • Fixed: Strict notices.
  • Added: Settings link in Plugins page.
  • Added: Logging failed wp_mail call.
  • Added: Option to send notifications when adding/updating a topic or reply in the admin.
  • Added: Enforce replacement of
    tags for newlines.


  • New: Added background notifications


  • Fixed: bug that was sending emails to everyone if no role was saved.
  • Fixed: no longer using ‘blogadmin’ as default, but ‘administrator’ upon install.


  • Added back old plugin deactivation
  • Bug fix for topic author not displaying when anonymous by Rick Tuttle


  • Improved role handling by Paul Schroeder.


  • Fixed edge case where user doesn’t select any checkbox in recipients list.
  • Array casting in foreach blocks.


  • Fixed load_plugin_textdomain call.


  • Fixed methods called as functions.


  • No-spam version forked.