Skip to content

Content Moderation

BuddyPress Hashtags can integrate with the BuddyPress Profanity plugin to prevent words on your profanity list from becoming clickable hashtags. When a member types a blocked word after #, the # is stripped and the word appears as plain text instead.

This feature requires the BuddyPress Profanity plugin to be installed and active. The moderation setting in BuddyPress Hashtags is only shown in the admin panel when BuddyPress Profanity is detected. If you do not have that plugin, the option does not appear and the feature is unavailable.

  1. A member writes content containing a hashtag that matches a word on your profanity list (for example, #badword)
  2. When the content is processed, the plugin checks the word against the BuddyPress Profanity keyword list
  3. If it matches, the # is removed and the word appears as plain text
  4. The word is not indexed in the hashtag database and does not appear in suggestions

Without moderation:

Input: "Check out #badword today"
Output: "Check out #badword today" (linked, indexed)

With moderation enabled:

Input: "Check out #badword today"
Output: "Check out badword today" (plain text, not indexed)
Content Type Filtered
BuddyPress activity updates Yes
BuddyPress activity comments Yes
bbPress forum topics Yes
bbPress replies Yes
WordPress posts Yes
WordPress pages Yes
WordPress comments Yes
  1. Install and activate the BuddyPress Profanity plugin
  2. Go to Settings > BuddyPress Profanity (or the equivalent settings page)
  3. Add your blocked words as a comma-separated list
  4. Set case sensitivity (see below)
  5. Save settings

Step 2: Enable Moderation in BuddyPress Hashtags

Section titled “Step 2: Enable Moderation in BuddyPress Hashtags”
  1. Go to WB Plugins > BuddyPress Hashtag > General
  2. Find Enable Content Moderation (this option only appears when BuddyPress Profanity is active)
  3. Toggle it on
  4. Save changes

The hashtag check uses the same case sensitivity setting as BuddyPress Profanity.

Case insensitive (default): #BadWord, #badword, and #BADWORD are all blocked.

Case sensitive: Only the exact case you entered is blocked. #BadWord is blocked, but #badword might not be.

  • Whole-word only. If bad is on your profanity list, #badminton is still allowed. The check matches the entire hashtag word, not partial substrings.
  • Not retroactive. Existing hashtags that were indexed before moderation was enabled remain in the database. Use the Hashtag Management tab to delete them manually.
  • The word still appears in content. Only the # is removed. The word itself is not censored or replaced - it appears as regular text.
  • Does not affect existing posts on re-save. If a post was published before this feature was enabled, re-saving the post will apply the moderation filter going forward.

If inappropriate hashtags were indexed before you enabled moderation:

  1. Go to WB Plugins > BuddyPress Hashtag > Manage
  2. Use the search field to find the hashtag
  3. Click Delete (or select it and use bulk delete)
  4. The hashtag is removed from the index and will no longer appear in suggestions or widgets

Deleting a hashtag from the index does not modify existing posts or activities. The word still appears in the content - only the index entry and the clickable link behavior are removed.

  1. Go to WB Plugins > BuddyPress Hashtag > General
  2. Toggle Enable Content Moderation off
  3. Save changes

All hashtags typed after this point will bypass the profanity check. Previously blocked hashtags are not retroactively indexed.

Situation Outcome
Member tries to follow a profanity hashtag via settings “This hashtag cannot be followed.” message
BuddyPress Profanity is deactivated The moderation setting is hidden; filter stops running
Profanity keyword list is empty No hashtags are blocked regardless of the toggle
Moderation is on but BuddyPress Profanity returns no keyword data No hashtags are blocked