latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

About: Paul Woods

Sorry, I've not written a description yet. I'll get to it soon!

My Latest Replies (From Various Topics)

Viewing 7 replies - 1 through 7 (of 7 total)
Author Replies
Author Replies
Posted: Friday Jun 8th, 2012 at 4:54 pm #15961

Jason, thank you very much for the detailed reply and code sample. It looks like there are a few scenarios I had not considered based on the way s2Member updates the array (as I suspected there probably would be). Knowing that it is only updated when a file is downloaded is a critical factor, so thanks for pointing that out… I will need to re-think a few things.

I think it’s important to provide the user ahead of time with the information to make smart decisions about which files they want to download now vs which ones they can wait for. But you’re right, it can get a little hairy depending on the situation.

Posted: Thursday Jun 7th, 2012 at 9:49 pm #15880

Jason, thank you very much for the replies. If nothing else, they at least give me the ability to start experimenting. It’s somewhat hard to believe that in 2012 serving audio is still so complicated and without consistent support across browsers, but it is what it is.

I am aware of S3, CloudFront, and RTMP and have had them working on an experimental level in the past. However, the project I’m now working on is an extremely low-budget affair (really just a side project / hobby that might someday turn into more) and at this point I’d prefer to avoid the additional cost.

The other issue is that RTMP is Flash-only, and I really want to support HTML5 for a variety of reasons. Of course HTML5 doesn’t offer the same level of security that Flash/RTMP do, hence the attractiveness of s2Member and a modified plan for access via a combination of download counts, obfuscation, etc.

If it’s possible to include support for byte-range requests in the next version, I would greatly appreciate it… it would be a great feature. Being more advanced in nature, perhaps it could be accessible via s2-hacks.php or a similar method.

Posted: Tuesday Jun 5th, 2012 at 9:39 am #15509

Any response from Jason yet on this one?

Posted: Monday Jun 4th, 2012 at 2:03 pm #15383

I may have figured this out on my own, but I did it based on the assumption that the first file returned by get_user_field (“s2member_file_download_access_log”) will always be the oldest. Is that correct?

My code assumes that the “time” value of that first file is the start of the “current period”. Using my example in the previous post, it then adds 7 days to find the end of the current period.

It also assumes that the current period is a “rolling” 7 day period, where the first file downloaded rolls off the list after 7 days and then the next file’s initial download time is used to calculate the current period.

However, these assumptions may or may not be correct based on Jason’s answer to a previous question I had about download calculations: Need Clarification on Downloads per X Days

In that previous example, it was assumed that the user downloaded all 5 allowed files on the first day, which made the counter reset to 0 after the 7th day. But if instead the user downloaded 1 file each day for 5 days, it would seem to make more sense for the current period to “roll” as described above.

  • This reply was modified 4 years, 7 months ago by  Paul Woods.
Posted: Tuesday May 15th, 2012 at 1:27 pm #13532

Jason, thank you very much for the clarification! I’m actually happy to find out that I had assumed incorrectly and that s2Member works as it does. Maybe an extra sentence or two in the docs clarifying that re-downloads are only available during the specified download period would be helpful.

Thanks to both Jason and Cristián for responsive support, I appreciate it.

Posted: Saturday May 12th, 2012 at 4:09 pm #13316

Thanks for the reply. I have read the text from the s2Member docs, but the time period issue was clouding things for me. I wanted to be sure I understood it correctly because it makes a real difference in the way you decide to structure access levels and content availability.

In my particular case, I want to protect audio content (mp3) so “plays” will essentially count as “downloads”. I think that when you’re dealing with media it might actually be better if scenario B were the correct one, but I can understand why it’s not… it could get pretty complicated pretty quickly. And of course everyone’s business model will be a little different anyway. If you’re trying to not only protect content but also make it available on as many platforms as possible, there is no perfect solution (Flash and RTMP are great, but if you need to add HTML5 for iPad, etc. it opens up a huge can of worms).

If Jason has any clarifications to add, I’d still be interested in hearing them.

Posted: Thursday May 3rd, 2012 at 11:52 am #12473

Thanks for the reply. When I login to my subsites as an admin, I do it for that subsite’s domain. So for example, when dealing with, I login on and I stay on Logins are fine… where I’m running into trouble is with registration of new users.

That said, the more research I do, the more it seems that multisite is not the proper solution for my needs. It appears that multisite is most appropriate for a network of sites that need a common user database, where it makes sense for the users to be aware of the root domain. I was simply using it for ease of administration, and it works fine for that purpose if you just have one person or a small team that will admin simple sites. But when you need to add membership functionality on a subsite (and keep it independent from the root site) it becomes problematic and more of a headache than it’s worth. I’m now heavily leaning toward migrating my membership site to a single install.

I’d still like to know what S2 Member considers “multisite support” to be. I think it’s something different than what I had assumed. (not knocking S2 Member at all for that, it just needs to be clarified)

Viewing 7 replies - 1 through 7 (of 7 total)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.