Subscribe2 4.10

Version 4.10 of the Plugin is now available for download.

Version 4.10 is for 2.6.x users only! (Although it should work with WordPress 2.5 too!) This version has been tested on WordPress 2.6.1 and 2.6.2.

Users of WordPress 2.0.x should download Version 2.22 of Subscribe2. Users of WordPress 2.1.x and 2.2.x should download Version 3.8.

This version contains the following improvements:

  • Fixed Registration form action from WordPress registrations
  • Repositioned the button to send reminder emails
  • Added filter for Admin Drop Down Menu
  • Improve functioning of Process button in Manage admin pane
  • Improved form compliance with XHTML
  • Fixed bug with cron time being changed every time options are changed

There are currently no known issues affecting this version 😀

If you use this plugin consider making a donation to support future development!

To install correctly use the WordPress Auto Upgrade feature or:

  1. Deactivate your exisiting Subscribe2 Plugin
  2. Use FTP software to delete the old plugin and upload the new version
  3. Ensure that the complete subscribe2 folder is uploaded
  4. Activate the new version of the plugin

196 thoughts on “Subscribe2 4.10

  1. Thank you, again!

    Two feature requests, if you allow:
    * Could you implement localization support (pot-files)? I’m always localizing the “By registering…” string, etc every time you upgrade
    * Could the management of subscriptions (mainly: removal of them per user) be done by admin? My registered users find it difficult to remove their own subscriptions.

  2. I confirm that the bug I reported previously (that giving people the option of subscribing when they register didn’t allow them to register) has been fixed. Thanks a million!

    Now all I would like is the option of manually entering the email address I would like to use for subscribe2, instead of being restricted to just the admin or the author of the post.

  3. AriK,

    There is localisation support – there is a POT file included in the download archive and there may be a translation for your language already in the archive.

    Per user management of subscription options is on my long list of things to implement but time and difficulty of these things means it won’t be soon, sadly.

  4. Lee,

    Thanks for confirming the bug fix 🙂 I test myself but its always good to get positive feedback. You can hard code the email address in the code but having a manual over-ride leaves the plugin too prone to being used as a spamming tool in my mind.

  5. Lee has already confirmed, but I will as well…subscribe option from registration form is working again.

    Thanks so much!

  6. hi

    Thanks for the plugin, I’m using it for some time.

    Is it possible, however, to have the plugin working with gmail BCC? Since there is a 99 message limit per 24 hours, the plugin should be able to work with multiple accounts simultaneously.

    Please consider. Thanks

  7. So a manual override would make it prone to spamming? I don’t understand why this would be the case, but I’ll take your word for it! If this is the case, then the current setup is fine.

    One other thing: in the release notes for 4.9, it says this:

    Send email direct to recipient if BCC is set as 1

    Does that mean if I set “Restrict the number of recpients per email to” to 1, it will send out the emails individually with the subscriber’s email address in the “to” field? This sounds like a good idea to avoid spam filters, but does it cause any problems with a lrage mailing list?

  8. Danny,

    Gmail usage is limited by phpMailer in WordPress. phpMailer does not currently support encrypted connections to SMTP servers and Gmail requires this – it will be fixed in WordPress 2.7.

    You can fix this yourself or wait for the next WordPress release.

  9. Hi!
    Thank you for the plug in!

    Yesterday I wrote the post and saved as draft because it was long and should be revised, but when it was published, no one has received a message. What could possible happen?

    Thank you!

  10. Lee,

    By allowing easy access to defining a From: email it could lead to people building lists of emails and spamming them by using different emails every time.

    One way for you to get aroung this would be to make a WordPress user with your chosen From: email address and then amend the get_userdata() function in the subscribe2 code to pick that record as admin. Look for the line:

    $admin = get_userdata(1);

    And change the number to the ID of your new user – you’ll have to remember to do this with each upgrade though.

    The Recipients set to 1 is as you describe. It should avoid some spam filtering but may put a large load on your server depending on how it is configured and how many sites you are sharing it with.

  11. I just installed 4.10 and am having aproblem. I use Sitelutions as my provider and I’ve always needed to use SMTP Mailer scipt to send emails. This has always worked fine and dandy. As a side note, every time I upgrade to an new version of Subscribe2 my SMTP Maile.php file is goen and I need to install it again. Anyhow, this time around I’m have WordPress error messages whenever I save new posts or do some other admin jobs. The last line read
    Warning: Cannot modify header information – headers already sent by (output started at /home/joelswan/public_html/blog/wp-content/plugins/SMTP Mailer.php:2) in /home/joelswan/public_html/blog/wp-includes/pluggable.php on line 770ntil I can figure this out, I’ll go back to 4.9, if I can find it!
    Thanks, Joel

  12. Sorry – forgot to mention I’m running WP 2.6.1 Also, I’ve tried going back to Subscribe2 v 4.9 and it still gives me this error. Odd. Great pugin, BTW!! If I can swat this new nasty, that would be great.

    Warning: Cannot modify header information – headers already sent by (output started at /home/joelswan/public_html/blog/wp-content/plugins/SMTP Mailer.php:2) in /home/joelswan/public_html/blog/wp-includes/pluggable.php on line 770


  13. Mahaila,

    I need more information. What version of WordPress and Subscribe2? Has it worked before? Are you using per-post or digest emails? Does it work for posts that aren’t saved as digest?

  14. mrjeswan,

    The bug is not wit Subscribe2 but the SMTP Mailer plugin – as stated in the error messages. I’m willing to bet that you have a blank line or other white space at the start of the file. Remove it and you should be good again.

  15. Dear Administrator, sorry for my ignorance, but I’m only a user with no further technicalknowledge

    Having said that, yes, it was working perfectly before. The only thing that has changed is the number of registrations, but as far as I knpow Yaho (my provider) does not have any restrictions. ANd I didn’t get any message too.

    About per-post ou digest… well, my intentio is sending messages as per post, not digest, and this is the option I selected on “Option” panel.

    I also translated the message sent about updates. SInce it has worked when people subscribe (they receive a portuguese message instead of english), maye this is not the issue. Or.. it is???

    This is the debug panel:

    Current Server time is: September 22, 2008 @ 6:14 pm

    Current Blog time is: September 22, 2008 @ 2:14 pm

    Current Blog offset is: -4

    No cron jobs scheduled

    Current Subscribe 2 Options are:
    [autosub] => wpreg
    [wpregdef] => yes
    [autoformat] => text
    [autosub_def] => yes
    [bcclimit] => 0
    [s2page] => 44
    [pages] => no
    [password] => no
    [private] => no
    [email_freq] => never
    [exclude] =>
    [sender] => author
    [reg_override] => 1
    [show_button] => 1
    [widget] => 0
    [barred] =>
    [mailtext] => BLOGNAME atualizou seu blog, \’TITLE\’


    Voce pode ler o post completo em

    Voce recebeu este email pois solicitou ser informado sobre atualizacoes no nosso blog.

    Um abraco,

    [confirm_email] => BLOGNAME recebeu uma solicitacao de ACTION * para este endereco de email. Para completar sua solicitacao, por favor clique no link abaixo:


    Se voce nao fez esta solicitacao, por favor, ignore esta mensagem!


    [remind_email] => Este email foi cadastrado para recebe notificacoes do blog BLOGNAME (BLOGLINK) mas a inscricao permanece incompleta.

    Se voce deseja completar a sua inscricao, por favor, clique no link abaixo:


    Se voce nao deseja efetuar a sua inscricao, por favor, ignore esta mensagem e seu email sera retirado de nossa base de dados.


    [version] => 4.8

    Thank you!!!

  16. Ah! You nailed it. Thanks, Matthew! I didn’t think it was a problem with Subscribe2 per se, but some sort of syntax error – most likely on my end. I looked as close as possible at everything – but it WAS spureous blank line at the top of the SMTP Mailer.php. Now, if I could get WP to stop telling me I need to update the SMTP Mailer all the time, I’d be happy. 🙂 BTW – thanks for this excellent plugin. We run a simply blog to keep our widely spread family and friends up to date on our lives. As I explained to them, it’s much easier to receive a short email whenever we post than to go around checking dozens of blogs! I may get a paypal account just to give you a gift. – Joel

  17. Matt – plugin works great! Thanks! Wondering if you can provide any tips as to how to change the font, etc to add more styling elements to the email that is generated.


  18. I read the installation advices. If I uninstall subscribe2 4.9 and reinstall 4.10, do my users loose their subscriptions to their categories or not?

  19. Patrick,

    Any HTML styling elements applied in your original post will remain in place in the HTML email generated by Subscribe2. You may be able to add CSS styling too but the rendering will be totally reliant on the capability of the email client software. Try to keep things as simple as you can so you don’t get complaints about poor appearance.

  20. Chris,

    as long as you don’t click the Reset button in Settings->Subscribe2, all of your settings will remain in the database when you perform a manual upgrade.

  21. Is there anything I can do to keep this plugin from sending out emails to subscribers every time a draft post is saved?

  22. Doug,

    This isn’t happening for me. What versions of WordPress and Subscribe2 are you using? Do you have any other plugins that alter the published status of a post?

  23. Hi there,

    I just upgraded my WordPress from 2.3 to 2.6 and my Subscribe2 plugin from (I can’t remember the version, but it was a couple years old) to 4.10.

    Couple things. I cannot get the S2 button to appear on the toolbar when I am writing a post or page entry. Also, I cannot seem to send the reminder confirmation email, and the unsubscribe link (S2LINK) that used to appear at the bottom of the email notifications (that went out whenever I posted something new) doesn’t link to anything…

    Got any tips for me?


  24. Josh,

    Taking your issues in order:

    Is the S2 button enabled in Settings->Subscribe2 and have you cleared out the browser cache?
    The Reminder Confirmation button only appears when you filer on Unconfirmed Subscribers in Manage->Subscribers.
    There hasn’t been an unsubscribe link for some time. The best way to accomplish this is by enter text into your templates in Settings->Subscribe2, something like:

    You received this e-mail because you asked to be notified when new updates are posted. To change your settings or unsubscribe visit <a href="BLOGLINK/subscriptions/">BLOGLINK/subscriptions/</a>.

    Note: The HTML is stripped out for plaintext emails.

  25. Great plugin! Thanks for the hard work. I have a couple of feature requests that would be awesome:

    1) Allow for attachments from the ‘Mail Subscribers’ page
    2) Allow HTML templates to be created for use in the ‘Mail Subscribers’ page

    Thanks again for the great plugin!!

  26. Casey,

    Thanks for the feedback. If you purchase the HTML version you’ll be able to send HTML email from Write->Mail Subscribers. I’ll add your requests to my list 🙂

  27. Hi,

    Allow HTML templates / emails to be created from Mail Subscribers Page would be great!

    tks if u can do

  28. Caesy,

    Depends what you mean by HTML templates. If you mean the panes in Settings->Subscribe2 then yes you can insert HTML into these and it will be saved. If you mean several file based templates stored on the server then no.

  29. Thanks for the great plugin..

    I made a post and it sent an email to the list (this is how i have it set up)
    I made another post 30 min. later, but no emails were sent..
    I deleted the post and re-posted and still none were sent.

    any idea why it would work on the 1 post, but not the others?
    I have the setting for “email on individual post”


  30. I think i may finally have a lead.. hopefully you can help me track down this problem.

    I run a private small blog with less than 50 users.
    i have per post emails turned on with this plugin.
    and i am using the plugin front page exclude categories

    I have a “news” category and post that go in that category are the only post i want on the front page (thus the use of the plugin above)

    So i made a post in the “news” category and it sent an email..
    I made a 2nd post in the “news” category and it did NOT send an email..
    I use the option in subscribe 2 to exclude all other categories except the news.

    I only want the “news” on the front page, but i also only want the news post, sending an email..

    i checked that I could receive emails from any cat. but my users only get email on news posts..

    so i made 3 test post in my “youtube” cat. and i got 3 emails..
    went back and made a news post, no email..
    back to youtube.. got an email..
    back to news.. nothing…

    I cant figure it out.. it almost seems like it only wants to send 1 email for the news category, but it will send as many as i want to any other cat.

    i hope all that made sense lol..
    thanks for any advice.

  31. Bob,

    Have you got any excluded categories in Settings->Subscribe2? All of your categories should be excluded except News so that emails are generated on if the post is in the News category alone.

    The only other possibility I can think of is a conflict between these 2 plugins. Does Subscribe2 work as expected without this other plugin activated?

  32. Matt,

    On my most recent Weekly Digest email I now see the publish date and time stamped between each POST TITLE and POST. (Almost all our posts are scheduled posts daily.) Example below:

    Posted on: September 22, 2008 @ 7:07 am

    In the email template post I am only using the same three fields as always:


    Any idea where this code got slipped into your most recent version? This sure makes my emails look messy.

  33. …and I just noticed the I lost the Read More About ### link in each entry on the Subscribe Weekly Digest. Thanks for looking into this Matt! Let me know and I can send you an example.

  34. Patrick,

    The date is a new addition – I though it was rather neat 😦 To get rid of it look in the subscribe2.php file for:

    $message .= __('Posted on', 'subscribe2') . ": " . mysql2date($datetime, $post->post_date) . "\r\n";

    And comment it out by adding a double slash (//) before it. Let me know if that fixes the second issue too.

  35. Thanks – I will try that and get back to you. My vote is drop it. It really distracts from the simple layout of the digest. My 2 cents…

  36. Matt, Removing that line worked to eliminate the Post date/time from the digest email – thank you!

    Now, testing just the Per Post email, the “Read More…” does not appear any longer with your 4.10 version. Thanks for looking into this Matt and for all your HARD WORK on this plugin.

  37. Monday, September 29, 2008
    9:15 PM
    Several days ago you wrote me a script to give to my service provider to determine why my emails weren’t be sent. I can’t find it on your site as a post. Please provide me the script again.

    Karl Davidson

  38. Patrick,

    I’ll try to make the date an optional thing then I thing then. The “Read more” link will only be present if the post has an excerpt or is over 50 words long.

  39. Not sure what happened but ever since I upgraded no emails are being sent. Upgrade seems to have broken it. I use Subscribe2 with the wpPHPMailer plugin and it has worked up until the last upgrade.

  40. I have been debugging for awhile. Called my host and they had me reinstall wordpress. They thought there was a hardcoded ip or something. Anyway, they were wrong.

    I tested using the “send a message to your users” item using the wpPHPMailer and then not. It seems that it is successful when I do not use it. The whole reason I use wpPHPMailer is the number of subscribers I have causes mail() to take longer then my server can handle (I get server hiccup 500 errors). Using wpPHPMailer fixed this.

    When I have wpPHPMailer enabled and submit a post nothing happens. When I send a message using the “send a message to your users” tool I get the following error. “Message failed! Check your settings and check with your hosting provider”

    Any support is appreciated.

    Just out of curiosity have you ever thought of breaking up the number of messages sent per request?

    Is that what this
    “Restrict the number of recpients per email to (0 for unlimited):”
    is suppose to break the messages apart?

    I set this to 10 and still get server hiccups

  41. Tuesday, September 30, 2008
    6:32 PM
    Thanks for the script. When I ran it, this is error I reviewed.

    Parse error: syntax error, unexpected T_STRING in /home1/helpthep/public_html/gatesvillehornets65/mail.php on line 3

    I change the text from to:

    There is a donation on its way.

    Karl Davidson

  42. Tuesday, September 30, 2008
    7:48 PM


    Also, I’m getting three identical messages to the administrator, but none to the registered guest.

    I am using the wp-mail-smtp plug in.

    I sent your donation. Hope you received it.

    Karl Davidson

  43. Matt,

    I’m using Subscribe2 version 4.10 in conjunction with WordPress MU 2.6.1. We’re experiencing an odd error where public subscribers are receiving emails but those who have changed their subscription preferences are not.

    I’m currently investigating if this is affecting all users who have changed their subscription preferences or just a few. I’ve also checked with the email server administrator. They’ve confirmed that emails are being sent including those in the BCC header. However the few email addresses I’ve asked them to specifically look for, of users who have changed their preferences, do not appear in the email server logs.

    Do you have any thoughts on where I should be investigating next?

    With thanks.


  44. Zane,

    PHPMailer is built in to WordPress so I’m not sure what wpPHPMailer actually does.

    If you have number of recipients as unlimited that plugin will send only 3 emails with all recipients in the BCC header. The speed of the script will depend on the construction of the BCC header. Splitting the header won’t make it any faster as it is all called from on function.

    Have you tried without using wpPHPMailer to see if the latest WordPress revision have fixed your server errors?

  45. Corey,

    You’ll need to have a look for entries in the usermeta table for those particular users who are having problems. Can you see what the ‘subscribe2’ and ‘s2cat’ entries are listed as for these users.

  46. update and….getting an error in the backend !

    Warning: upgrade(/homez.23/iiko/www/euro/wp-admin/install-helper.php) [function.upgrade]: failed to open stream: No such file or directory in /homez.23/iiko/www/euro/wp-content/plugins/subscribe2/subscribe2.php on line 172

    Fatal error: upgrade() [function.require]: Failed opening required ‘/homez.23/iiko/www/euro/wp-admin/install-helper.php’ (include_path=’.:/usr/local/lib/php’) in /homez.23/iiko/www/euro/wp-content/plugins/subscribe2/subscribe2.php on line 172

    i’ve tried to go back to the old version, and it’s the same…

    no problem with others update…

  47. Maitresinh,

    The error message is telling you what is wrong – install-helper.php is missing. This is a core file in WordPress so that means your WordPress install is incomplete in as much as that file (and maybe others) is missing.

    Reinstall WordPress.

  48. Hey Matt,

    When I send without using wpPHPMailer it gives the Server Hiccup 500 error. I assume it has something to do with the limits of execution time my provider gives me (my server is shared). I will call them again and tell them the advice to reinstall WP didn’t work.

  49. The exact error I was getting was

    A misconfiguration on the server caused a hiccup. Check the server logs, fix the problem, then try again.

    After checking the error log I found

    SUEXEC error_log: [2008-09-30 16:00:20]: uid: (2831/xxxxxxxx) gid: (2831/xxxxxxxx) cmd: fcgiwrapper

    We turned off PHP5 (FastCGI) and raised the max execution limit from 30 to 500. I’m running now to see if it fixes it.

    Is this script suppose to run indefinitely? Before when this script did work with wpPHPMailer I would have to click submit and let it run all night. Eventually sometime the next day I would see the emails.

  50. Zane,

    I have over 600 subscribers and I’ve never needed to wait more than 30 seconds! It will depend on the hardware specs of the server, the number of sites it’s hosting and any software limitations.

    That said turning off FastCGI and increasing the execution limit will hopefully solve your issues once and for all.

  51. Turning off PHP5 (FastCGI) and raising the php max execution time from 30 to 500 seemed to have worked. Thank you for your support Matt. Making a donation now.

  52. Wednesday, October 1, 2008
    4:24 PM

    Does the fact that I’m getting three e-mails to the administrator and none to the registered guests give you any insight into why I’m the only one getting e-mails?

    I spent about 30 minutes last night with the tech people at HostMonster looking over the error log, but to no avail. They are great! They keep saying they don’t have a limit in the BCC of e-mails.

    Karl Davidson

  53. Many thanks for your quick reply.

    I can confirm for a user and post that I’m using for testing that:

    – The post I’ve investigated is attached to a term with an ID = 7
    – There is no user_meta.subscribe2 field for the test user
    – There is a user_meta.s2_cat7 field with a value of 7
    – There is a user_meta.subscribed2 field with a comma delimited list of values, of which one is 7

    Does this help?

  54. Karl,
    If you are getting 3 emails that indicates to me that the plugin is working fine. It is generating an email for each of the subscriber possibilities.

    The fact that none of you subscribers is getting an email could be down to several things. First let’s make 100% sure it isn’t the plugin. Search through subscribe2.php for instances of BCC and change them to CC. This will allow you to see the list of recipients in the CC header when you get the email. If that works then it’s a server side issue.

    It could be mail restrictions based on domains or a firewall setting if there are no email limits.

  55. Techexplorer,

    These setting are a little bit messy if the subscribed2 filed contains more than just a 7. That said it would appear that this subscriber will only get email notifications if they are in Category 7 on your blog.

    You may want to bulk subscribe all your registered users to all categories again and let them make new changes from there. Otherwise it may be a case of hand correcting the database table.

  56. Can you expand on what I would need to do to fix the subscriptions? For example how could I subscribe all of my registered users again? Alternatively how would I hand fix the table for the users?

    I’m not sure what has gone wrong with the table.

    Any clarification you can provide will be greatly appreciated.

  57. Techxplorer,

    The easier way is to go to Manage->Subscribers and scroll to the bottom of the page, check all the boxes and click unsubscribe, then repeat but click subscribe. This will reset all your registered users to subscribed to every category.

    Hand fixing would involve making sure that each user id had a CSV string containing their subscribe categories that tallied with the s2_cat entries. This would take longer and be more prone to mistakes so I’d suggest you go with option one!

  58. hi …first of all … fantastic plugin … but i have one questen
    is there a way to give author users the right to manage subscriptions?

  59. Stefan,

    Yes, look for the following line in the subscribe2.php file:

    $s2management = add_management_page(__('Subscribers', 'subscribe2'), __('Subscribers', 'subscribe2'), "manage_options", __FILE__, array(&$this, 'manage_menu'));

    And change the manage_options to publish_posts.

  60. Techxplorer,

    Have you checked that the settings are now correct in the database backend? Also, can you confirm with your host that the emails was not in the BCC header.

  61. Friday, October 3, 2008
    9:15 AM


    How were you going to send me the script revision we discussed? It’s the one where I got an error message. If you sent it, I haven’t received it.

    Please see below:

    Tuesday, September 30, 2008
    6:32 PM
    Thanks for the script. When I ran it, this is error I reviewed.

    Parse error: syntax error, unexpected T_STRING in /home1/helpthep/public_html/gatesvillehornets65/mail.php on line 3

    I change the text from to:

    There is a donation on its way.

    Karl Davidson

  62. Hi Matt,
    I know this has been discussed before, but if our hosting server limits the amount of notifications being sent out at one time, is there any way to get around this? For example, is there a way to change it so if I have 100 subscribers and my limit is 10 per email, it could be configured to send out 10 separate notifications of a new blog entry instead of all at once? Does this make sense? Thanks!

  63. Belinda,

    The first setting in Settings->Subscribe2 will limit how many recipients there are per email. this may help you depending on how your host apply their restriction.

  64. So, if I set the limit to 20, and I have 200 recipients, does this mean that 10 separate emails will be sent with 20 subscribers each?

  65. I also get this error message when I send a test message:

    Message failed! Check your settings and check with your hosting provider

    Language string failed to load: instantiate

  66. Belinda,

    Yes, if you set the limit to 20, and you have 200 recipients it does this mean that 10 separate emails will be sent with 20 subscribers each.

    The error you are getting is because the mail() function is returning an error rather than sending the email. Probably the error is a rejection message from your host related to you exceeding their limits. The second message is just down to the fact that you don’t have the error message library installed.

  67. Only Registered users are getting per-post emails, but Subscribers are not.

    What pilot error have I created?

    Many thanks.

  68. Hi,

    Thanks for the nice plug in.

    Is there a way to collect name and locatoin for those that subscribe but don’t set up a WP account?


  69. I see there is a version that will send HTML formatted emails but requires a paypal payment. Where is this version on this site? I really need need this function on my site.

  70. My emails are not being blocked.

    I can send from both my host provider mail tool as well as Apple Mail.

    Only issue is that non-Registered users are not receiving email.

    Why would this be a host provider issue, when emails sent to non-host provider domains work fine per above, but are not sent from Subscribe2?

    Thanks again.

  71. Just to be clear, I did contact my host provider has confirmed no issues as well.

    Any debug suggestions?

    Thanks again.

  72. David North,

    There is no way to collect name a location built in, you’d have to make a pretty substantial custom hack to the database, form details and data processing.

  73. Sierra,

    Sending from you host webmail and email client has got absolutely nothing to do with email restrictions via the php mail() function.

    The reason I think it’s a host problem is because my script underneath all the options and WordPress actions is pretty simple – it either emails or not.

    If it emails at all then from my perspective it works – if the emails send but some are not arriving then it’s one of two things spam filters or email limitations applied by your host on your server.

    Ask your host specifically about email limitations from your webspace using the php mail() function.

  74. Matt,

    I’ve been doing some further investigation and have come up with a possible explanation for the error other than the pre-existing database issues we resolved the other day.

    It would appear that the HTML formatted emails may not be sent with the correct headers. I’ve been investigating by using the error_log functionality to send me emails of the variables passed into the mail function just because it is executed. On the plain text emails I can see the content of the headers variable. On the HTML emails I can not.

    There is also another indication that this may be the issue. According to some of my registered users they are receiving emails, but they are receiving the plain text version, not the HTML version.

    Could these two things be related?

  75. Hi Matt

    I’m looking to have a mechanism as an administrator to actively administer subscriptions to categories. I.e. to identify and change subscriptions from the admin pages, in some cases not even allowing users to manage certain categories for themselves.

    I know you have an all-or-none subscription option at the moment, but it isn’t good enough for what I want.

    I think this may be a recurring question, and I was wondering whether there were any current activities (before I offer to write some php)


  76. Techxplorer,

    In the Subscribe2.php file add the following line to the top of the write_menu function:


    Then log into your blog and look at the Write->Mail Subscribers page. Is there any output at the top?

  77. mgnbrunty,

    This is on my very long list of things to do but I haven’t even started yet! The trick is going to be adding the edit functions to the Users pages. Feel free to submit some code if you produce a fix and I’ll adopt it into the main code.

  78. Hello love the plugin but I have two problems.

    On the users page it does not show any option other that subscribing to the daily post mailing and it is auto checked.

    The and page managing users does not have the check box next to each user to edit the users or delete them.

    what do I need to do to fix this.

  79. Dagbot,

    The Users Page will appear like this if you have set the plugin to send digest emails.

    As for the Manage page – you cannot edit Registered users on an individual level, change the filter to list Public Subscribers and you’ll see the edit boxes.

  80. Techxplorer,

    In the subscrieb2.php file look for the mail() function and change BCC to CC. This will allow you to see a list of recipients of the email in the copy sent to your admin address.

    If the recipients are there in the CC header then the email is being blocked after it’s construction either by your server, a firewall or spam filers.

  81. Matt,

    OK, I’ve started playing with this on a 4.10 build. At the moment I’m working on doing it from the subscribers page, we’ll see how I get on. I’ll send you a URL and login credentials when I get somewhere. There are one or two things that are confusing me right now, I’ll get abck to you if they turn out to block me.


  82. Matt,

    Further testing has shown that:

    – On another blog in the system, running WordPress MU 2.6.1, no matter what I do only one user is shown as being a subscriber using the print_r technique you outlined in the comment on October 7.

    – Using the manage subscribers page appears to have no effect.

    – Uninstalling the plugin (using the uninstaller) and reinstalling showed no changes in the subscriber list

    – Using the CC method showed that there were no users in the CC header.

    Any thoughts?

  83. Just discovered Subscribe2 and love it. Thanks Matt.

    I’m in the process of switching a school newsletter from a mailing list program (phplist) to a WordPress blog. I plan to send brief text email excerpts with Subscribe2. I’ve already done this successfully with small numbers of subscribers on a test basis. I’m about to scale up to 350 people.

    My main question is: What are the pros and cons related to setting the number of recipients per email (assuming my ISP has no limitations)?

    I know that with large bcc lists, many recipient ISP’s and/or client software will label the email as spam. What is the downside of setting recipients as 1? And if there is a downside, have you found there’s a good balance between the two choices (unlimited vs 1)?

    Thanks again for a great plugin. I’m now heading off to the “Donate” link!

  84. Techxplorer,

    Erm, don’t think you said you were using MU initially, that changes things somewhat! I can’t test on MU very easily.

    Would you be prepared to give me access to an MU blog with Subscribe2 enabled and also access to the database via phpMyAdmin so I can do some debugging?

  85. Harvey,

    Thanks for the donation!

    The answer to your question is that it will depend on your server both in terms of the hardware, sharing ratio and any software limitations.

    If you’re server is fast and hosts only your site then emails to single recipients will be fine. If there are no limitations and the server is slow or busy then a large BCC limit would be a good idea.

  86. Hi,

    RE: HTML Mail Subscribers

    Once i make the $40 donation can you let me know how i get hold of the html version?


  87. I guess a I spoke just a little too soon. I’ve been having similar problems to techxplorer, using 1and1 as host.

    It seems to have started after going beyond just the very basics. I was able to send out multiple addresses as bcc’s (# of recipients = 0) initially but now I can’t.

    However, after
    – adding a second category
    – excluding one (enabling subscribers to subscribe to excluded)

    I now seem to be unable to revert. I can only send emails with # of recipients set to 1.

    It’s probably not the host – 1and1 assures me I can send 99 email addresses in one email. It’s also not the bcc issue – I changed all bccs in subscribe2.php to cc but still see only one address.

    I’m using WordPress 2.6.2.

    Any suggestions?

  88. And to further add to the puzzle, I created another blog, also at 1and1, set # of recipients = 50, and it seems to be working just fine. Firm confirmation that 1and1 allows plenty of addresses in the bcc line.

    The only difference between the two sites is that the non-working site has one category that’s excluded (but it shouldn’t affect things – it’s not the one in which I published).

    In the Subscribe2 table, the only meaningful difference I can see is the row size. The non-working blog has a larger row size (545 bytes vs 73).

    I hope this helps.

  89. And lastly, I’ve now re-simplified the non-working blog. Just one category, no excludes – dead simple. Still no love. The only setting that works is “# of recipients = 1”.

    I hope you can solve this. I’m on a shared server and don’t want to be kicked off 😦

  90. Hi,

    Ive just donated $40 (i hope i got the conversion right). Can you confirm you received – and then send the html version.

    tks v much

  91. Hi,

    I’ve copied subscribe2.php over the existing file but i cant see any difference? And when i got to write/ mail subscribers there is no option to send email as html??

    Help pls

  92. Techxplorer / Harry,

    I think I have found and fixed a bug that would have been affecting WPMU. Grab the Dev Version and upload it.

    Then in Manage Subscribers Unsubscribe all your registered users and then Re-subscribe them – this will repair any problems in the database (I hope!)

  93. Matt,

    Apologies for the confusion, I should have mentioned we’re using WPMU. 😦

    I’ve tried the dev version on one of the blogs in the system and I’m now seeing a different error. The code you outlined in the comment on the 7th now returns nothing.

    On the “Manage Subscribers” page the “fliter” drop down box is populated with the number of subscribers but word “NONE” is displayed where you would expect to see the table of users.

    Also the subscribe / unsubscribe action on the form doesn’t appear to have any effect on the subscribers.

    Any thoughts?

  94. Harvey,

    My apologies – it had been a long day – even by half past eight!

    1and1 do have restrictions in place when I’ve asked them in the past – it would be worthwhile you checking with them again – they tend to blacklist accounts for a time period once you try sending more emails that you are allowed too.

  95. Techxplorer,

    Looking back at your comment you did say you were using WPMU – so my apologies!

    I think I may have broken one of the SQL searches from what you are saying – I’ll fix this tonight so have another go with the Dev Version tomorrow if you can.

  96. From a 1and1 tech support email:
    “The limitation on the emails is the number of recipients per send of email. It only allow 99 recipients/email addresses in send 1 email.”

    And from another 1and1 tech support email:
    “Using the PHP mail function, there is no limitation for that.”

    Re the bug you’re working on, was that specific to WPMU? Or did also affect WP V2.6.2? I’m using 2.6.2

  97. Harvey,

    The bug I’m working on was specific to WPMU. This page seems to says that there is a hardware limit applied to server scripts and you may be falling foul of this on your host.

    They should be able to tell you if this is the case and if not what the actually error / issue blocking your emails actually is.

  98. I’m not yet falling foul – not yet, anyway. Here’s the tale of 2 of my blogs on 1and1 (both with Subscribe2, same plug-ins, etc)

    Blog 1 ( – no problem setting # of recipients to 50 (or 0, or probably any other number. Emails sent out just fine.

    Blog 2 ( – *only* works with # of recipients set at 1 (although I believe originally worked with # set at 0, but not 1000% certain). Definitely does not work set at 50, nor 10, nor 2, nor 1. It appears that, in a posting I did on Friday, with recipients set at 1, everyone (300+) received it, although my screen did refresh to a 1and1 error page.

    Nevertheless, I’d rather not push it and would like to set it at a higher number.

    I hope this helps in the diagnostic. i could give you private ftp access to the sites, if that would help.

  99. Hi,

    For my site I’d like the page where the user manages their notifications settings to be in the style of my site rather than the style of WordPress backend. I’ve figured out how to remove the wp-footer, but cannot figure out how to remove the other parts of the page. I want to lose all the options and menus at the top and just be left with the form, so I can put my own header in.

    Could you point me in the right direction?


  100. Steven Clark,

    Basically you are looking at styling an admin page like the front side of your website then. I’m not sure where you’d start in attempting to do something like this.

    You’ll need some of the admin aspects of the page otherwise it simply won’t work but which ones you can safely remove I’m not sure. You’ll also need to over ride the admin side CSS. Try reading up on the main WordPress website – there may be some API functions that will help you.

  101. I think I’ll try uninstalling Subscribe2 then reinstalling it on the blog that can old send out individual messages. I feel like I’m playing with fire – if that blog puts too much stress on the 1and1 server, it could shut down everything of mine (not just that blog).

    I’ll let you know the result.

  102. Trying to uninstall Subscribe 2 using the ~uninstaller.php script that comes with the Subscribe2 plug-in but getting:

    Fatal error: Call to undefined function: load_plugin_textdomain() in …./wp-content/plugins/subscribe2/subscribe2uninstaller.php on line 105.

    Does the uninstaller still work? Or should I just delete the Subscribe2 table via phpAdmin?

  103. Uninstalled then reinstalled. Partial success. Here are the results of my testing:

    1) Continues to work at a “# of recipients per email” setting of 1

    2) Also works at a setting of zero. Therefore, the problem is not because 1and1 strips out bcc’s. I’m pretty sure I tested 0 as one of the choices pre the uninstall but I can’t be 100% sure.

    3) Does not work with any other setting for # of recipients (I tried 99, 50, 40 – I’m extrapolating the rest 😉

    4) it doesn’t seem to be related to other settings too (such as category exclusions). I tested several on and off and they worked appropriately.

    The bug seems very specific to the code related to setting # of recipients. Good luck finding it 🙂

  104. Matt,

    This morning I grabbed a copy of the latest dev version as you suggested. I have a similar issue to Harvey above in that my public subscibers get emails, but the registered users do not.

    I’ve tested using a small list and a “# of recipients per email” setting of 1 and emails appear to be distributed as expected.

    Unfortunately due to my setup and number of subscribers I can’t test a “# of recipients per email” setting of 1 due to with my large main blog and list of subscribers

    I think the issue now seems to be an issue with the batching.

    Many thanks for your continued efforts.

  105. Similar but not identical, Techxplorer. FWIW, my problem is with the Public subscribers. I only have one registered user on that particular blog (but 300+ public subscribers).

    I did my testing by 1) exporting the public subscriber list, 2) uninstalling S2 (thereby wiping out the entire list), 3) reinstalling and then 4) adding back just a few (a collection of my various email addresses).

    I haven’t yet tried it out on the full 300 list (which I’ll reimport when ready). I’m hoping Matt will have a fix by Friday so I won’t have to choose 0 or 1.

  106. I have a small problem… Perhaps you can help me. I try to use yours plug-in. And when it sends mail confirmation etc the character & aka ‘and’ is display in code &amp. I have the ‘and’ character both in my name and user name. It’s not so pretty. How can I fix this? plz help

  107. Re Weekly Digest:

    My weekly digest emails at appear as on long sentence when using the TABLE short code.

    Beijing Olympics: Team GB fail drug retests? America: Will the Dow Jones be below 9000 on 31 October? F1: Who wins the Japanese Grand Prix? Financial Meltdown: Robert Peston predicts FTSE “carnage” next week! Football: England beat Belarus? F1: Will Lewis Hamilton choke again and lose the 2008 Formula One world championship?


    Is there anyway of putting formatted digest emails as an ordered list ?


    1) Beijing Olympics: Team GB fail drug retests?
    2) America: Will the Dow Jones be below 9000 on 31 October?
    3) F1: Who wins the Japanese Grand Prix?


  108. Techxplorer / Harvey,

    I’ll have another look through the header code but:

    1/ I think the WPMU issue is down to the SQL database queries, I think I have fixed this now but need it testing fully.
    2/ I have no idea what is causing the public subscriber issue because the SQL has been static for years and has not changed. It is working flawlessly for me on my sites – but I’ll look again.

  109. Helena,

    This isn’t too difficult to fix but can you tell me where exactly the & symbol is used on your blog? Is it the blog name, your user name or in the post content?

  110. I like the subscribe2 widget that comes with the plugin, does it have an unsubscribe widget as well?? Please reply by email… Thanks.

  111. I’ve not read the full list of comments so maybe it’s been mentioned, but here is my suggestion.

    When choosing categories to be distributed via email there should be an option to select which categories ARE to be included for subscription, not which are not to be included. By having to select those that are not to be included means that if in future you add new categories to the blog then you must remember to go back to subscribe2 settings and turn those cats off else they automatically become part of the subscription list.

    Depending on how you plan to use the pluggin there could be 2 options, turning cats on for subscription or turning them off from subscription.

    For example, if using it to publish a newsletter where one blog category is the newsletter to be emailed out to subscribers, meanwhile rest of blog is just simply a blog. So as your bloggin’ away and adding new categories over time it would be nice if the newsletter category could just remain the subscribed part.

  112. Matt,

    I’ll download the dev version again and give it a test and let you know what happens. Unfortunately I can’t give you access to the DB or to the WordPress system but if there are things you’d like me to check, just let me know.

  113. An off-the-wall troubleshooting idea as I rack my brain for differences between my blog-that-works (BTW) and my blog-that-doesn’t (BTD):

    The only significant distinction I can think of is that the length of my user name in the BTD is very long (33 characters).

    Is it possible that number of characters in the line could be causing a line break and messing up your script?

  114. Stever,

    The object of the plugin is to send notifications. Having to initially set it so that it did actually send notifications seems to me a little bit counter-intuitive.

  115. Harvey,

    I can’t think that the length of your admin username would cause issues. The issue may be to do with caching of SQL query results and having reviewed the code it could be more efficient so I’ll tinker about and let you know when I’ve got a new version.

  116. Harvey,

    Actually, on looking at the code again (after some sleep) it’s quite efficient as it stands. As your problem is with public subscribers can you look at the following for me:

    Using phpMyAdmin or similar have a look at your WordPress database and ensure that there is a subscribe2 table and that is has some data stored in it.

    If the above is looking okay add the following line to the top of one of the admin page functions, write_page for example. This should print an array of your public subscribers at the top of the Write -> Mil Subscribers page.


  117. I checked the DB. There’s definitely a fully populated subscribe2 table. As I mentioned earlier, I still don’t see any significant distinction between that table and a separate subscribe2 table I use for another blog that works (same DB, but different prefix).

    I’m pretty sure I didn’t do the 2nd part of your suggestion correctly so it would be useful if you connect the dots for me. Which specific file should I change?

  118. OK. Done. And yes – I get an array of my subscribers. Same result in both the “blog-that-works” and the “blog-that-doesn’t’ (different names, of course)

  119. Harvey,

    As I was stuck at an impasse after your last post I reviewed all your comments. Your row length in the non-working blog is HUGE – I think something there has halted Subscribe2 from working. If I email you direct could you be able to send me an SQL dump of the subcribe2 table?

  120. Matt,

    I downloaded a new copy of the dev version this morning to test it out. It still appears that some of my registered users are getting emails while others are not. I have:

    – Downloaded the latest version, de-activated it and activated it
    – Unsubscribed all of the registered users and then subscribed them again to all categories using the manage subscribers page

    Any thoughts?

  121. Techxplorer,

    I found a bug with some information provided by Harvey. There is a glitch in the code if the number of subscriber recipients is less than the set BCCLimit variable. It is fixed in the svn version I’ve just committed. Can you try this version please.

  122. Erin,

    There isn’t. I’ve hacked up a Widget but it looks rubbish and probably will only cause me numerous requests for a more graphical version or another way to change the colour or match the owners theme. If you want a look and are prepared to be disappointed let me know and I’ll email you the code direct,

  123. You guys have a bad typo HARD CODED in the sunscribe2.php file:

    It says: “By Registering with this blog you are also agreeing to recieve email notifications for new posts but you can unsubscribe at anytime”

    It SHOULD say: “By registering with this blog you are also agreeing to receive email notifications for new posts but you can unsubscribe at anytime.”

    You misspelled receive, you capitalized Registering and you forgot the period at the end.

    Just letting you know as all the people using your plugin have this typo.

  124. Hello,

    I have your Subscribe2 plugin running on my blog and I love it! I recently changed hosting providers and now none of my registered users are showing up. When I add them manually, they go under the confirmed category and not registered.

    Is there a difference between the two? Will my subscribers still get notifications?


  125. Hi hello
    The ‘and sign’ & is used both in a username V&G and in the bloggname vin&gastronomi….
    Thanks for answering… //Helena

  126. Vern,

    It sounds like you lost your user table when you migrated. The main difference between registered users and public users is that registered users can alter the email notification format and also opt out of getting emails assigned to certain categories.

  127. Hi There,

    I’m using a self hosted WordPress 2.6.2, running Subscribe2 Version 4.10 and I have a small problem that I just haven’t been able to find an answer to.

    Everything works fine, except for the following –

    When a user clicks on the confirmation link in the confirmation email, they end up on the basic subscription page that displays the form, instead of the page that says their Subscribe/Unsubscribe was successful.

    In spite of this the user is successfully subscribed or unsubscribed, but seeing the subscription form again is just confusing.

    Other messages seem to work fine, for example when you submit your email addres you get the message that a confirmation email is on it’s’s just the confirmation part that is not working.

    I followed these instructions to do the installation:

    Any advice would be much appreciated.



  128. Hi. I am trying out this plugin and I am not getting the admin emails notifiying of the batches that have been sent out. Does this mean that the plugin is not sending the individual post notifications?

  129. Sharon,

    If you are getting no emails to your admin address and the number of recipients per email is not 1 then your emails are being blocked on the server – contact your host.

    If you have limited the recipients to 1 then enter a test email address as a subscriber to make sure everything is working.

  130. Hi Admin,

    Firstly: This plugin is awesome and I am definitely going to make a donation, even if I dont get this issue sorted out.

    My .htaccess doesnt appear to have any setting for $_GET output (see below. Could I ask you to see if you can reproduce the problem when you subscribe ? My blog is at


    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

  131. Hi There,

    You’re 100% right. I’m using the Permalink Redirect plugin to cater for permalinks. When I deactivate this plugin the subscribe2 one works perfectly.

    I’ve tried excluding this page in the Permalink Redirect configuration, but nothing I’ve tried so far is helping.

    Let me know if you have any ideas please.



  132. Strictly speaking I don’t really need the Permalink Redirect module (because permalinks were enabled right from the start), so I think I could just deactivate this plugin permanently.

  133. Matt,

    I tested with the latest development version, downloaded today, and all of my subscribers appear to have received emails.

    Many thanks for your continued efforts in developing this plugin and for working so hard in resolving this issue.

  134. I was using subscribe2 on my blog on my former host. I’ve reestablished a new blog now, and I’d like to be able to move over all of the subscribers to my new site. On the new site, I’m only going to be using it (s2) for registered users–no public subscribers. Is there a way to import my list so that all my formerly registered users will still have the same settings, and where I will import the old public subscribers as registered users?

    If I use a tool like the WordPress Import Users plugin to get them all in, is there a way for me to make them all subscribers once they’re there?

    Unrelated: on the paid HTML version, is it just strictly supporting adding html tags to the write pane, or is it more robust than that?

  135. Brian,

    You’ll need to import over the user and usermeta tables to preserve your users and their preferences. If WordPress Import Users does this then it should work automatically.

    The paid HTML version enables sending of HTML emails to Public Subscribers and allows insertion of tags into the Write->Mail Subscribers pane. I am also thinking about adding the TinyMCE editor into the paid version but this isn’t done yet.

  136. Thank you for the additional information. Before I contact my host, I just want to re-clarify:

    My site has over 500 registered users and I was wondering if they need to re-confirm their subscription in order for the plugin to work. Or will automatically consider them as confirmed registrations?

  137. I version 4.10 and an issue I’m having is opposite of what I’ve found when searching for my problem. My problem I and my subscribers are having is that all their email addresses show up in the BCC box instead of being hidden. So to be clear, a suscriber to my blog will receive the email from my blog informing them that I’ve posted and when they look at the email they will also find all of my subscribers email addresses there too. Anyway of fixing that?

  138. Mark Christensen,

    The mail application on your server should be stripping out any information in the BCC header before sending the email. If this is not happening it is because of the server configuration so you need to contact your hosting provider.

  139. Hi,

    I’ve been working with Subscribe2 for a while and all went well, untill recently.
    Now it simply won’t send out emails anymore.

    Is it normal that when i go to the url of the plugin directly, i get this error?

    Fatal error: Call to undefined function trailingslashit() in /customers/ on line 35

    Just trying to make sure i’m not doing anything wrong

  140. Steven,

    It is normal for you to get that type of error accessing the plugin file directly; it isn’t supposed to work that way.

    Have you contacted your host to check that the emails are not being blocked by the server?

  141. Hi,

    Yes, i did and they ‘re telling me these mails aren’t blocked by the server.

    What they did tell me is that i had to edit something in the wp-includes/formatting.php to make it work?

    I don’t see what i should change…

  142. Steven,

    wp-includes/formatting.php handles the on-the-fly formatting of the content of your blog and has noting to do with sending of emails from the site.

    If it has worked in the past and isn’t now then it simply can’t be anything to do with your WordPress install or Subsacribe2 plugin. To make sure that this is true I’d suggest you re-install both and then, if things still don’t work, return to your host and suggest they come up with a more plausible explanation!

  143. Hello Admin and all,

    Once again, many thanks for such a great plug-in. I have had one recurrent problem with posts being truncated to a specific number of words in all my email notifications. This is even with the option set to PlainText – full for all subscribers. I already checked with the data under the hood in the database and the option was set to Plain Text – Full. Yet, all email notifications truncated after a specific number of words.

    So I took a peek in the PHP code and noticed this original code (I do not know if the code will show up here):

    if ('' == $excerpt) {
    // no excerpt, is there a <!--more--> ?
    if (false !== strpos($plaintext, '<!--more-->')) {
    list($excerpt, $more) = explode('<!--more-->', $plaintext, 2);
    // strip leading and trailing whitespace
    $excerpt = strip_tags($excerpt);
    $excerpt = trim($excerpt);
    } else {
    // no <!--more-->, so grab the first 55 words
    $excerpt = strip_tags($plaintext);
    $excerpt_length = 55;
    $words = explode(' ', $excerpt, $excerpt_length + 1);
    if (count($words) > $excerpt_length) {
    array_push($words, '[...]');
    $excerpt = implode(' ', $words);

    Notice the last else statement… what that tells me is that even though my option is set to Plain Text – Full, it will never display the full text — just the excerpt of the first 55 words. I did a debug and noticed that <!–more–> never appears in postings exceeding 55 words. In fact, there’s nothing to indicate a split text.

    With that, I modified the code to this — what the modification does is to check for whether subscribe2 option is set to full text instead of excerpt, and if so, display full text in the email notifications. I added three lines…look for EOTF: below and then the three lines following EOTF:

    if ('' == $excerpt) {
    // no excerpt, is there a <!--more--> ?
    if (false !== strpos($plaintext, '<!--more-->')) {
    list($excerpt, $more) = explode('<!--more-->', $plaintext, 2);
    // strip leading and trailing whitespace
    $excerpt = strip_tags($excerpt);
    $excerpt = trim($excerpt);
    } else {
    // EOTF: no <!--more-->, so find out if subscribe2 option has full or excerpt for the autoformat
    if ('fulltext' == $this->subscribe2_options['autoformat']) {
    $excerpt = strip_tags($plaintext);
    else {
    // ah, excerpt, then grab the first 55 words
    $excerpt = strip_tags($plaintext);
    $excerpt_length = 55;
    $words = explode(' ', $excerpt, $excerpt_length + 1);
    if (count($words) > $excerpt_length) {
    array_push($words, '[...]');
    $excerpt = implode(' ', $words);

    I thought I’d pass this on in case there is someone out there who wants full email notifications instead of a truncated notification with […] at the end of the email.

  144. Argh… the code is missing certain keywords. I suggest you view this in “View Page Source” or thereof and see the code in full comments and all. I verified that you can see everything when viewing the HTML Code of this page. My apologies for not thinking to use or whatever code tags used by this site to display everything.

  145. Epiphany of the Fox,

    That part of the code prepares 3 different contents for the emails, namely $excerpt, $plaintext and $content.

    It sounds like you have set the default to fulltext – plain for REGISTERED subscribers BUT this won’t apply to PUBLIC subscribers who will still get excerpt posts. The plugin is intended to work this way so that public users are encouraged to register with your blog to gain additional functionality.

    That said your amendments will hack the plugin to send full plaintext to all subscribers provided that autoformat is set to fulltext, but in reality this option is supposed to be used to define the settings that are applied to newly registering users so your hack may not work reliably now or in the future depending upon your settings.

Comments are closed.