Subscribe2 stopped sending

Subscribe2 (the standard version) began to act strangely for me a few weeks ago - showing only the first line of the message, and eventually not sending any messages at all. I couldn’t figure out what was wrong.

There was one email address that showed up in my event log as “could not send” - [email protected]. I managed eventually to delete that one, via phpMYSQL (couldn’t do it via Subscribe2)

Subscribe2 still didn’t work, so I rolled back to a previous version. Still no joy.

Then I discovered Subscribe2 for ClassicPress (I’ve been using ClassicPress for about 5 years and have the latest version installed), and thought for sure that would fix it. Unfortunately not. No emails are being sent out to my 4k subscribers. But I do get the “Message Sent” message.

If I send only to “registered subscribers” (ie me) - it works. But I receive nothing if I try to send to the whole 4k list.

I realise this isn’t much to go on - but if someone here could give me some idea of what to investigate, some possible reasons for this happening, or any suggestions to fix the problem I’d be very grateful.

are you able to enable error logging for your website? If not this article might help (you just need to enable it via wp-config.php as explained).

Once you enable it try a sending action to the subscribers list and then go to your server files and check the error log file. It should contain a record of possible errors if any. In case you have errors showing then you can report here and we will see what to do to help.

Also do check that the SMTP is correctly set for the site because it might not be and this might result in receiving that message sent while it is not.

SMTP is the first thing to check. Could be that eg. your SMTP provider has changed policy and only allows a specific number of mails per x seconds etc.

And if you dont use SMTP, it may be very well your hosting provider who has limited sending mails using the built-in mail() function. Eg. I remember Raidboxes recently announced a limit of 250 mails per minute.

Thank you both for the responses. I contacted my provider and there have been no changes in the SMTP.

He did wonder about the rogue email address which couldn’t be deleted via Subscribe2. Another one has appeared - it showed up in my “recent events log” in my hosting panel: “could not send”. Unfortunately, I haven’t been able to get rid of this one, even in PHPmyadmin. He wondered if Subsribe2 was getting “weirdly hung up on that weird address that won’t send.”

I tried to enable error logging, but the “define (‘WP_DEBUG’) , false” line wasn’t there, and I was too nervous to just add it. I’ll try to find an error logging plugin, and let you know what it says…

those lines about error logging won’t alter your site.
You just need to add the following before the /* Stop Editing */ line:

define( ‘WP_DEBUG’, true );
define(‘WP_DEBUG_LOG’, true );
define(‘WP_DEBUG_DISPLAY’, false );

The first one enables logging, the second tells it to log into a file and this means they both need to be set to true. The third instead is used sometimes to display errors in front-end/back-end if you are on a staging site and want to see easily what is going on and where. In your case it needs to be set to false because you are in production and you just need to make a test and receive the result, then you will delete them and the error log.
Once you have added those lines, try a mass send to the list and then go to the wp-content folder and there you will be able to find the error log file you need to open to see what is happening behind the scenes during a mass send.

Once you have that error log file you can download it for reference, or paste the contents here for help or send it to your hosting provider also, and then you can delete those lines and the error log file entirely from the server. This procedure che be performed every time you need to see what is going on and doesn’t harm the site. It is considered “unsafe” to have the last one to true in production because it shows file paths on the server but this is not your use case. you are in production and just having that file is enough.

Thanks, Elisabetta. I’ve done that now and tried to send a couple of mailshots. Found the error log file - there are over 4 thousand lines. Did a search for “subscribe2” and “mail” but nothing came up. Are there any other key words I should try?

I can’t help thinking these rogue email addresses have something to do with it. I just can’t get rid of this latest one, even via phpMyAdmin. It just keeps popping back!

Edited to add: The address has disappeared from phpMyAdmin, but is still in Subscribe2 and cannot be removed.

can you paste here some of the lines? usually when they are that many it’s just a bunch of them repeated all over.
You need to copy them here, not all of them but the ones the repeat, and redact the paths they contain. Once pasted here, select them and format them with the code icon (on the editor top bar it’s made like this: </>). Then I can help with the error by having a clear installation with it on a staging site, and checking why those lines come up (even if my install does work with no issues in error logs, the line gives me a direction as to where I have to look for) as for the e-mail… I do not want to say something that might not be - but it is strange. However it could be related to the errors.
That error might be a PHP conflict with a plugin or theme, a bug in the CP or WP version of the plugin or something else entirely.

For the records, can you confirm you were first using the WP version of the plugin, and then you started using the CP version in the directory? It might be the WP version has some kind of bug that left some remainder in your install. If so I think my testing method is goin to spot this.

Thanks again, Elisabetta. Yes, I had been using the WP version of Subscribe2 for about 5 years before the problem started. Then I switched to CP version last week.

In the debug log I found this re Subscribe2:

[05-Oct-2026 14:02:16 UTC] PHP Deprecated: Function wp_enqueue_script was called with an argument that is deprecatedsince version CP-2.2.0! The enqueued script wp-pointer has been deprecated. It will be removed in version 3.0.0 of ClassicPress. Further details may be found at Deprecated Scripts | ClassicPress . in /home/public/wp-includes/functions.php on line 5773
[05-Oct-2026 14:02:16 UTC] PHP Deprecated: Function wp_enqueue_style was called with an argument that is deprecatedsince version CP-2.6.0! The enqueued stylesheet wp-pointer has been deprecated. It will be removed in version 3.0.0 of ClassicPress. Further details may be found at Deprecated Scripts | ClassicPress . in /home/public/wp-includes/functions.php on line 5773
[05-Oct-2026 14:02:16 UTC] PHP Notice: ob_end_flush(): Failed to send buffer of zlib output compression (0) in /home/public/wp-includes/functions.php on line 5394
[05-Oct-2026 14:02:16 UTC] PHP Deprecated: Creation of dynamic property S2_Admin::$ip is deprecated in /home/public/wp-content/plugins/subscribe2-for-cp/classes/class-s2-list-table.php on line 253
[05-Oct-2026 14:02:16 UTC] PHP Notice: ob_end_flush(): Failed to send buffer of zlib output compression (0) in /home/public/wp-includes/functions.php on line 5394

And this is the most common error, which takes up about 90% of the log:

[05-Oct-2026 14:02:17 UTC] PHP Notice: ob_end_flush(): Failed to send buffer of zlib output compression (0) in /home/public/wp-includes/functions.php on line 5394
[05-Oct-2026 14:02:17 UTC] PHP Notice: Function register_sidebar was called incorrectly. No id was set in the arguments array for the “Sidebar 1” sidebar. Defaulting to “sidebar-1”. Manually set the id to “sidebar-1” to silence this notice and keep existing sidebar content. Please see Debugging in ClassicPress for more information. (This message was added in version 4.2.0.) in /home/public/wp-includes/functions.php on line 5941

It’s all above my head, I’m afraid!

None of those log file entries are relevant to failed email sending.

Are you using an SMT plugin on your site to channel emails via an email server? 4k subscribers is a very significant mailing list and it is quite likely your web server would not be allowed to send that many message as a method of spam prevention.

Channelling via SMTP may help, but that’s easily done and hosting providers can still throttle or block emails in this volume - that’s why services like MailGun and MailChimp exist - paid solution to this hosting limitation.

My hosting provider, nearlyfreespeech.net, has allowed me to send out 4k+ mailshots for years. They know it’s not spam.

I’ll try to send out another message, making note of the exact time, and see what comes up in the error log.

OK, I tried to send out another mailshot and made a note of the exact time - 12.03 UTC. Then I had a look at my debug.log. From 12.03 onwards, all I get are those “sidebar_widget” warnings. Literally nothing else for the next 15 minutes, and continuing. Just the same as before I tried to send the mailshot.

I know what is possibly happening. Subscribe2 uses widget in a sidebar.

the PHP notice is pointing to the fact that the sidebar is not registered correctly (so it’s a theme issue because sidebars are registered there).

There might be a chance that the theme is conflicting with the plugin that expects a certain format for the sidebar, and this hinders the plugin from working correctly? it should not in theory (collection of e-mails is a function and sending should be another) but I will inspect if this might be an issue. What theme are you on so that I am able to understand if my theory is correct?

Oh, that’s interesting! I’m using ComicPress 2.7.

EDIT: I will switch themes and try to send a mailshot.

I can confirm it does not seem theme specific and that the code separates the collection of email from sending correctly (after all the plugin author is our Matt :smile: and I think that says a lot on the level of competence the code is developed with).
I am curious because I am now looking at my logs to understand if they return the same thing as yours.

Yes, the theme-switching didn’t work. It was worth a try!

Also my logs only report the deprecation messaging related to some JQueryUI components that CP is going to remove in v3, and are irrelevant to the subscribe2 conundrum. E-mail sending gets the success notice in dashboard but as of now I do not really see the email in my inbox. Will wait a little more to see if it lands there.

I have tried several configurations with my server, SMPT and the like. As of today I am able to reproduce the issue every time (mails not sent even from a trusted domain that I own, while in dashboard I receive the success notice).

However my logs aren’t showing errors connected to Subscribe2 specifically. My idea that the widget error the OP mentions above could be related with Subscribe2 was coming from the fact that it could be caused by it expecting a sidebar being registered a certain way but it’s not it, I also tested that and no luck.

Basically I tried to break the plugin even more in the hope it would give me more data to go by to understand what is going on but with no success.

I suspect that having used the WP version the inability to delete certain addresses might be correlated to that however - I think there could be renmants of the WP version of the plugin in database that are now conflicting with the CP version. I will test this theory further in the coming days.

I really appreciate your help, Elisabetta. Thank you. I have managed to delete those email addresses now, but I still can’t send.

Thank you for your kind offer of help. I have now given up on Subscribe2, and replaced it with Newsletter, which is rather bloated by comparison but has managed to deliver to every one of my subscribers, including several who apparently have not received anything from me in years!

PS E-Newsletter looks good. I will keep it in reserve if anything goes wrong with Newsletter.

@karner42oliver there are two versions of Subscribe2 - the one for WP and the one for CP (the latter is I think forked from the first and the dev taking care of it is our Matt).
I haven’t had the time to test a specific thing however - since the OP started on the WP version and then installed the CP one I suspect that the issue might be that some renmants of the WP version that was installed before hinder now the funtioning of the CP version. I will test it during the week end.
Also thanks for pointing out other alternatives!