Forum Replies Created
-
I installed WP Crontrol and saw nothing out of the ordinary:
ws_plugin__s2member_auto_eot_system__schedule
_cron_zencache_cleanup
bp_activity_akismet_delete_old_metadata
wp_maybe_auto_update
wp_version_check
wp_update_plugins
wp_update_themes
akismet_scheduled_delete
wp_scheduled_delete
wp_scheduled_auto_draft_deleteEarlier today I added the following to my functions.php file:
add_filter( 'bp_activity_do_mentions', '__return_false' );
No @mention emails were generated since then. As soon as I commented that code out, within 5-10 minutes thirteen @mention email notifications went out – all with links to content that is years old (pre-import).
I’ve therefore put the filter back into functions.php and can only assume I’ll have to do without the @mention functionality of buddypress.
I appreciate everyone’s help up to this point.
How do I disable the importer script? I used the official bbpress importer script found in:
Wp-Admin>Tools>Forums>Import Forums
As far as I know, once it’s done importing then it’s done importing.
A response from my host:
Nope; there’s no background processes. If there were, I’d expect to be seeing a lot higher rate of messages – they seem to more or less be coming out every time a page is loaded (some people refer to the behaviour as “poor man’s cron”)
I’ll ask my host.
In the meantime, where are a member’s preferences stored when they choose email settings under:
“A member mentions you in an update using @…”
Maybe I just can run a query and set them all to no for the time being.
My host said emails are STILL being sent out.
Can anyone suggest an interim solution (other than switching off my mailserver completely) to stop these emails going out?
Evidently placing the code below in functions.php had no effect:
//buddypress stop mention emails // remove_action( 'bp_activity_sent_mention_email', 'bp_activity_at_message_notification', 10, 5 ); //End buddypress stop mention emails //
bp_notifications is still generating notifications on pre-import mentions.
When I sort bp_notifications by date_notified I see:
When I reference the item_id back to the bp_activity table, the IDs for date_notified as you can see in the screenshot above relate to very old pre-import activity.
When I sort bp_notifications by item_id I see:
You can see from the above screenshot all the pre-import mention notifications going out (look at the jump in item_id between forums and activity).
Post-import new reply notifications are working fine.
OK, just so we’re on the same page I’ll give the URIs as I respond.
Having looked into my notifications feed here:
/members/member-name/notifications/
I see that notifications were indeed coming in in ‘batches’, too.
For example:
All refer to pre-import mentions.
HOWEVER, no notifications for pre-import activity appear there from the time I ran the below mySQL query yesterday:
UPDATE bp_notifications SET is_new=0 WHERE is_new=1
So that seems to have had some effect (yet emails continued to go out).
As for activity entries being created, if I go to:
/members/member-name/activity/
… it contains all activity from the start of time (post-import and pre-import activity).
bbpress told me this is a buddypress issue since buddypress generates the @mention email notifications.
A couple of hours ago I added this to my functions.php file:
//buddypress stop mention emails // remove_action( 'bp_activity_sent_mention_email', 'bp_activity_at_message_notification', 10, 5 ); //End buddypress stop mention emails //
Hopefully that will stop new emails from going out. Not the ideal solution, though as it also blocks mentions for anything post-import, too (I believe).
I used the bbpress importer for phpBB:
The script only runs once and after everything is imported it is not used.
I very much doubt my install has been compromised. In fact, searching through the buddypress support forum it seems this is an issue that crops up after imports – so I believe there is probably something in the core code doing this.
A couple of examples:
https://buddypress.org/support/topic/post-migration-constant-user-email-notifications-for-mentions/ @zane
https://buddypress.org/support/topic/mass-notifications-of-old-mentions/ @halo-diehard
Disabling my mail server is not a practical solution. For now I will just have to block all email notifications for mentions until (hopefully) a solution is found.
Pssst @netweb – are you still around?
I deactivated all other plugins and code snippets in functions.php (none of which are related to buddypress) and users are still getting spammed with these emails. How on earth can I stop this from happening? I am getting so many complaints I just don’t know how to handle this.
Maybe I just need to comment out the notification emails and just remove the functionality entirely? This is driving me (and thousands of people) crazy.
Furthermore, I am concerned that I’m going to get into trouble under the UK’s anti-spam laws.
OK, so about five hours ago I ran the following query:
UPDATE bp_notifications SET is_new=0 WHERE is_new=1
This worked as intended – the is_new field was updated to 0 in all rows of the bp_notifications table.
However, I just finished speaking to my host and they said:
A mail was generated as recently as 5 minutes ago with a notification for content dating back to 2007 (I only know this because it’s currently in the mailserver’s queue for delivery).
There is not (and have never really been when I have logged on) a substantive amount of messages in the mailserver’s queue to speak of – if there is a queue still, it’s in your application’s database/code somewhere – they only seem to be dribbling out a few at a time.
Does anyone have any other ideas?
@henrywright – My web host said there were only 164 messages in the queue last night when they looked. However, I know for a fact more than that are going out and that they’re going out every day for mentions that happened years ago. Does wordpress process this in batches or as a cron?
@shanebp – Wouldn’t your suggestion just turn off notification altogether? I don’t want to do that – I just want to stop members getting notifications of @mentions from years ago (or, prior to the import at least).
Is there any way to purge notifications emails for mentions made before a certain date from the database? For the past few days, my server has been sending out hundreds of these notification emails with activity mentions that took place years ago. As a result, I’m getting a lot of (warranted) grief.
I am not confident with coming up with my own query. Can you offer a bit more guidance? By that, I mean paste the entire query I should run 😉