Forum Replies Created
-
Also a couple of new features in GlotPress now on https://translate.w.org:
β’ BuddyPress Language packs: https://translate.wordpress.org/projects/wp-plugins/buddypress/language-packs
β’ BuddyPress Translator contributors: https://translate.wordpress.org/projects/wp-plugins/buddypress/contributors@shanebp I’ll try to get a patch up today and deployed.
No, mentions do not count, only
http
,https
, andftp
links are counted.It would also be interesting to get all mods/keymaster reaction around this subject in the next days, or at least a clear reminder on how this support forum should/could be moderated.
Fixing the said bug has thrown us in the deep end… I’ve got quite a few more moderator tools/updates to go in over the next couple of days that should help us out on both BuddyPress.org and bbPress.org π
@danbp wrote…
2 is very appropriate: one for a site url, one for a screen shotβ¦ or max. 2 spam link πThis is WordPress’ default setting
/wp-admin/options-discussion.php
and I tend to agree, 2 seems quite reasonable.@danbp wrote…
But for mods (only), it could be more depending the user problem, even if 2 seems to be ok in most case.I’ve just added a patch to bypass this altogether for moderators as it is pointless moderating moderators topics/replies that the moderator can self approve!
@danbp wrote…
But the warning msg, what ever the allowed links will be, is important.A bit of background, there was a bug in bbPress that meant ‘maximum number of links’ was never actually being checked, thus we fixed said bug and now we see the results of said fix :/
Included in those same checks is
Comment Moderation
andComment Blacklist
also at/wp-admin/options-discussion.php
for when a topic or reply contains any of the listed words (e.g. name, URL, e-mail, or IP) then the topic or reply will be saved with the post statuspending
and held in the moderation queue.Currently if a match occurs from the “blacklist” a notice is displayed and the post is never created
ERROR: Your topic/reply cannot be created at this time.
, this behaviour will not change and only keymasters/admins can bypass this.For the actual “warning message”/”notice” that is posted when either the max number of links or a word trigger from the “comment moderation” word list is triggered per @JohnJamesJacoby’s comment here:
https://bbpress.trac.wordpress.org/ticket/1988#comment:3
Having it be nondescript, and leaving it up to the moderation/admin team to review those posts and choose whether or not to publish them, seems the simplest approach for today.
The code I posted will stop all email activity notifications, though I haven’t tested it π
I’m not sure how BuddyPress does all of what it does for these notifications, kind of strange that it is still processing older entries and sending notifications though.
My advice (up until now) has always been don’t import your forums into bbPress with BuddyPress activated for this very reason, though if it starts processing a backlog of notifications for ‘old content’ once activated then this is not ideal behaviour either.
This isn’t a bbPress issue, bbPress doesn’t currently import subscriptions from phpBB so bbPress has no way of knowing what topic or forum a user is subscribed to to be able to send them an email.
I’m pretty sure you’ll find this is BuddyPress sending them if you have it activated, per @halo-diehard same issue here, https://buddypress.org/support/topic/mass-notifications-of-old-mentions/
One of these days I’ll get to reading BuddyPress’ source code in it’s entirety but I haven’t as yet!
I think this should do the trick to stop things though:
remove_action( βbp_activity_sent_mention_emailβ, βbp_activity_at_message_notificationβ, 10, 5 );
bbPress side of things https://bbpress.trac.wordpress.org/ticket/2599
The workaround (for now until fixed) would be to verify the bbPress forum visibility and then to also run the bbPress repair tool “Recalculate private and hidden forums” to ensure meta data integrity.
Excellent, I’m glad it’s fixed π
I’m not sure the exact cause of the issue either but I will dig around in our code and see what’s going on, one confirmed issue is the bbPress “Group Forums” repair tool so I’ll get that fixed and then take a closer look at group forum permalinks.
Presuming your forums are under the
f1
parent in my previous post a couple of options to try:First potential solution:
With your group forum that is broken create a new bbPress eg
test
under thef1
parent forum and then either via the front end or backend change that BuddyPress Group forum to point to the new ‘test’ forum you just created.What happens when you visit this group forum? Does it work as expected it should?
Now go back and change the group back to the correct bbPress forum, does this fix it?
Second solution if the first above does not work. Whilst BuddyPress is deactivated edit the bbPress forum permalink so that it matches the same URL structure as your BuddyPress Group that does work.
Does this fix it?
Ok, so are both the forums that you want to use for both groups you added the URL’s to above ‘sub-forums’ of the
f1
forum?e.g.
f1
β correct-group-name
β name of another groupOk, we’re closer, looks like the correct bbPress forum ID is correctly associated with the BuddyPress Group π
It looks like the slug/permalink is broken π
Before looking at a fix, a clarification if I could
Here is my bbPress Forums Hierarchy Structure Layout
BuddyPress Forums Category (Top Level Category)
β BuddyPress Public Group Forum (Forum)
β BuddyPress Hidden Group Forum (Forum)
β BuddyPress Private Group Forum (Forum)In bbPress Settings (Settings -> bbPress) (/wp-admin/options-general.php?page=bbpress)
“BuddyPress Integration” -> “Group Forums Parent” is set as “BuddyPress Forums Category”My bbPress settings for forum slugs are:
– Forum Root Slug ->forums
– Forum Prefix -> Check/Tick
– Single Forum Slugs -> Forum ->forum
So my URL’s are build with the “forum root slug” then the “forum single slug” then “BuddyPress Forums Category” and lastly the actual forum “BuddyPress Public Group Forum” which results in:
/forums/forum/buddypress-forums-category/buddypress-public-group-forum/
Now onto your URL’s:
Yours with bbPress forum ID 127650
/forums/forum/forums-2/f1/correct-group-name/
Yours with bbPress forum ID 127628
/forums/forum/forums-2/name-of-another-group/
These infer the following:
forums-2
β f1
β β correct-group-name
β name of another groupWith your settings:
“BuddyPress Integration” -> “Group Forums Parent” is set as “forums-2”
– Forum Root Slug ->forums
– Forum Prefix -> Check/Tick
– Single Forum Slugs -> Forum ->forum
As long as the quote/code formatting displays as expected is this what your bbPress forums layout hierarchy looks like?
EDIT: Tweaked the formatting above and just trying to digest where the
forums-2
comes from and why it is there, thef1
no doubt is part of the incorrect forum slug that we can get to with the fix, I’ve got to go dig through some source code of bbPress & BuddyPress to workout where things are broken and how to fix it.There are two locations you can edit the bbPress Group forum associated with a BP Group:
Frontend:
http://example.com/groups/buddypress-public-group/admin/forum/
Navigate to the groups ‘home page’ -> Admin -> Forum
(Where ‘buddypress-public-group’ is the name of the group forum)Backend:
http://example.com/wp-admin/admin.php?page=bp-groups&gid=1&action=edit
Wp-Admin Dashboard -> Groups -> ‘BuddyPress Public Group’ -> Edit
(Where ‘gid=1’ is the group forum ID)Each of those screens should show both a checkbox and a dropdown menu showing the available bbPress Forums to associate with that particular BuddyPress Group.
Do both show the correct/expected bbPress forum selected?
(If you think any of the forum names in these dropdowns is ambiguous view the HTML source of the dropdown and each forum should also have avalue=
form field and that will be the ID of the bbPress forum)However I do note that on the forums page although the βEditβ button shows the correct forums_id values for each forum, the βViewβ button shows an incorrect link for the problematic forum.
Hmmm… To continue using my same examples I have thus far, the bbPress Forum I am using has an ID of
25
and it’s edit link ishttp://example.com/wp-admin/post.php?post=25&action=edit
, it’s view link ishttp://example.com/groups/buddypress-public-group/forum/
. Because BuddyPress is activated we add some redirection bits and pieces so we cannot directly modify the bbPress forum permalink whilst BuddyPress is activated.If you deactivate BuddyPress for a moment and check the view link of the same bbPress forum it should be similar to
http://example.com/forums/forum/buddypress-forums-category/buddypress-public-group-forum/
where in my casebuddypress-forums-category
is the bbPress parent forum category that all by BuddyPress group forums are located under andbuddypress-public-group-forum
is the bbPress forum.So comparing my examples above do you see anything in your config that differs that matches up with your URL mismatch somewhere….
Clear as mud all of the above π
Also did you try updating via the ‘Group Forums’ Edit Screen UI?
It should be correctly updating the bbPress Forum there for your BuddyPress Group, did it? did you try?
As per your original post you are using bbPress v2.5.4, the
bb_forums
table are part of the legacy BuddyPress Group Forums/bbPress v1.x Forums.bbPress 2.x no longer uses these tables, all of bbPress 2.x forums, topics and replies are in the
wp_posts
table as custom post types.If you look in the bbPress Forums panel and hover your mouse over or edit one of the forums you will see the post ID in the URL, you will find that (educated guessing here) that most of your forums have a six digit ID’s?
Each of those ID’s should correspond to the bbPress 2.x Forum attached to each BuddyPress Group Forum as you see in your
wp_groups_groupmeta
table.So if you look in the
wp_groups_groupmeta
table at your group ID26
and that127650
value does NOT match the bbPress forum ID you expect it should match.Grab the correct bbPress forum ID and write down the current ID if you need to revert, bakcup your database etc etc) then update that value and I think you should be sorted.
Thinking about this further by updating the bbPress forum associated with the BuddyPress Group via the BuddyPress Groups edit should update the value in
wp_bp_groups_groupmeta
as I outlined above.Before you try the MySQL direct approach above could you try editing the group and seeing if the the bbPress forum ID is updated correctly please.
Dashboard -> Groups -> Edit Group
Then, on the far right is a dropdown to select the bbPress forum associated with the BuddyPress group, if you change this does it update
forum_id
inwp_bp_groups_groupmeta
with the correct bbPress forum ID?It looks like there is a bug in bbPress’ repair tool π
If you grab the bbPress forum ID e.g.
25
Open up
wp_bp_groups_groupmeta
You should see something similar to this:
id group_id meta_key meta_value 1 1 total_member_count 2 2 1 last_activity 2014-06-26 00:37:33 3 1 invite_status members 4 2 total_member_count 1 5 2 last_activity 2013-11-03 10:35:12 6 2 invite_status members 7 3 total_member_count 1 8 3 last_activity 2013-11-03 10:37:53 9 3 invite_status members 10 1 forum_id a:1:{i:0;i:25;} 11 2 forum_id a:1:{i:0;i:27;} 12 3 forum_id a:1:{i:0;i:29;}
So for group group ID
1
the bbPress forum ID25
is stored asa:1:{i:0;i:25;}
(serialized array), thus change the25
to the correct bbPress forum ID you need.I’ll go write up a fix for bbPress repair tools for the next release π
There is a basic outline of what to do https://codex.bbpress.org/theme-compatibility/
Also this should be helpful:
https://codex.bbpress.org/theme-compatibility/step-by-step-guide-to-creating-a-custom-bbpress-theme/
You also only need to copy the templates that you want to change.
There is a chance it could be affecting new groups though I thought if that was the case this would have already been picked up as a bug.
The best way to determine if that is the case will be with phpMyAdmin looking at the foloowing tables:
- `wp_bp_groups`
- `wp_bp_groups_meta`
- `wp_posts` using this query `SELECT * FROM wp_posts WHERE post_type LIKE forum`
- `wp_postmeta` using this query `SELECT * FROM wp_postmeta WHERE meta_key = _bbp_old_forum_id`
I have a feeling it may be related to Step #6, when the bbPress repair tool ‘Repair BuddyPress Group Forum relationships’ works only the first time it is run, subsequent attempts will not actually update bp_groups_groupmeta.id with the correct forum ID.
Details of this are in bbPress ticket #2089
If and ONLY if in your WP database tables `wp_bp_groups.slug` is an exact match with the associated post for the forum in `wp_posts.post_name` then the 2089.2.diff patch will work as long as this forum was one of the group forums originally imported.
Diving into phpMyAdmin and looking at these values and manually updating them I think will be the best solution.