Subscribe 2.2.9

Version 2.9 of the Plugin is now available for download!

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

This update has addressed the following issues:

  • Fixed auto-subscribe bug when there are no registered users
  • Fixed get_userdata() call issue
  • Added simple CSV export – see later in this post
  • Reworked options storage routines

Many thanks to Francis Reyes for submitting bug reports and fixes.

Download Version 2.9, recommended for all users.

To install correctly:

  1. Deactivate your exisiting Subscribe2 Plugin
  2. Use FTP software to delete the old plugin and upload the new version
  3. Activate the new version of the plugin

Previous versions are available as source code from the SVN Site.

CSV Export

  • wp-content must be writable to enable this function
  • CSV export is a button option under Manage -> Subscribers
  • a file called emails.csv will be written to wp-content
  • this function is very basic and may be improved in future versions

16 thoughts on “Subscribe 2.2.9

  1. Thanks for the update. I’ve been using the previous version of Subscribe2 and I’m eager to see what you’ve done in the new version.

    One Question: Will deleting the old version cause me to have to reconfigure the subscriptions among all of my various users? I’ve spent a lot of time setting up which users subscribe to which category and I’d be loath to have to try and redo everything.

  2. Scott,

    The database entires for user subscriptions are not changed by the updated version of plugin but as always – ensure you have a good backup before upgrading.

  3. The only question I have is: Is there an easy way to make it so I could include an Unsubscribe link in my notification emails? Essentially, what this would require is the ability to have a variable in my outgoing emails that has the subscriber’s email address, so I could have a link at the bottom of the email that went something like this:

    It seems easy enough in theory, but I wasn’t able to figure out a way to do it from looking at the code…

  4. Hmm.. This should go on a TODO list, i.e. putting an md5sum of the email into the database. Maybe I’ll work on this today.

    Andrew the short of the long is it’s not possible to directly go from an email to a ‘you have unsubscribed’ action. Users must access the page where you have put the subscribe2 token, fill the form and hit the radio box.

    This is because although s2_action is sent via GET, the actual email is processed from POST.


  5. I actually don’t need it to go directly to a “you have unsubscribed” action. I know that using GET, you can still send a command to the web server that will cause it to send a confirmation email—i.e. if I type the following address in my address bar, it will subscribe this email address:

    What this will do is skip the submission form and cause a confirmation email to be sent to, which I can respond to and be subscribed.

    Essentially, I want to do the same in reverse, so that people don’t have to go through the extra step of having to load a page just so they can unsubscribe. If they can click a link that’s the same as the one above (only with unsubscribe as the action), it will immediately send them a confirmation email asking them if they’re sure they want to unsubscribe, which they can confirm by clicking on another link.

    The problem as I see it is that as I was skimming the code, the str_replace section of the code doesn’t have in it a way to grab the email address easily, and I’m not good enough with PHP to be able to dig out exactly where the recipient is being grabbed from so I could mimic that.

  6. Andrew,

    Nice idea but not currently possible as emails are sent to lists of people using the BCC: header. To get this functionality the plugin would need to send individual emails to all subscribers. On some sites this simply isn’t possible due to emailing restrictions to prevent spam email.

    If spam is ever cured I’ll certainly look at changing the sending routines and this can be added.

  7. Upon further inspection of the code, see how send_confirm makes the unsubscribe link that is sent in the confirmation emails. It does use md5hash, except it doesn’t seen to do anything with it.
    Perhaps its used to check the existence of $id?
    Anyways, check there and you can just reconstruct the string.

    Matt, I’ll submit a patch to clean this up a bit this weekend perhaps.

  8. Hmm. I guess as long as it’s all being sent out in a single email as opposed to in separate ones, there will never be the ability to do this.

  9. Matt,

    Hmm the BCC issue does prevent us from sending emails to individual users. However, we should make an option for those of us who run our own mta’s? I run my own server so I can send as many emails as I like.

  10. My host specifically has mailing list software built into it, so I would imagine that they’d have no problem with individual emails, either.

    I guess I just think it’s classier to be able to offer a “client” or reader the ability to do something without having to take unnecessary steps. If somebody wants to unsubscribe from my list, chances are they don’t want to think too hard about it. So why not figure out a way to let them do it right from the email they didn’t want to receive in the first place? 🙂

  11. Andrew,
    My host has built in mailing software too but there are emailing restrictions in place to stop the spammers.

    But.. if we can get an option to send individual emails for those who run their own MTA into the code we’ll do it. I just hope we don’t get a mass of “emails aren’t sending” if we do this due to spamming restrictions 😦

  12. What worries me is that perhaps only 10% (or possibly less) of people actually run their own MTA. Perhaps it would be easier to add a message substitution that directs users to the token page and implement this in every email. Then the user will just have to fill out the form with their email.

    This adds another issue, fishing out which page the author put the subscribe2 token in. I was never a fan of the token anways, how about rewrite_rules_array and url redirecting a user specified target to filter()?

  13. Fishing out the page should be easy with something like:

    SELECT ID FROM $wpdb->posts WHERE post_content LIKE ‘%%’ AND post_status = ‘static’ LIMIT 1

  14. I have just installed your subscribe2 version 2.2.9 plugin and it looks very nice. But, I do have a little problem. As an administrator everything is working OK and I can manage my own subscriptions from the Profile – Subscriptions menu. When I log in as a regular user (userlevel = Subscriber) I get “You do not have sufficient permissions to access this page.” when I try to manage my subscriptions from the Profile – Subscriptions menu.

    I am running wordpress version 2.0.6 and subscribe2 was installed after I upgraded from 2.0.4 to 2.0.6. I have tried to disable all (not that many) plugins, and activated them again. No difference. Have also rerun the wordpress upgrade.php script. Didn’t help that either.

    Do anyone have a clue?

  15. Eirik,

    I think you have found a bug in WP 2.0.6 my friend 🙂

    The menu systems work perfectly through all 2.0.x releases until 2.0.6. I’ve tracked it down to:


    At the very end of this file there is an if statement with a die command inside it – comment this out and things work again (almost as they did before)

    I’ll open a ticket with the WordPress folks about this one.

  16. Thanks for the quick response.

    It’s working now after some “hacking” in the menu.php file.
    Hope the WordPress folks fix the bug before they release 2.1.

Comments are closed.