Joomla: How to serve videos based on subscription type


Fronten User Access pluginHere we discuss a free Joomla plugin to serve content on your site, depending on a subscription plan. For those not familiar with Joomla, you can register new users and give them a Joomla group status, like Registered, Author, Editor, Manager, etc… just as you would in WordPress.
Depending on that status, a user can do certain things on the site. Authors and editors can create articles and so on.  Here we are only interested in registered users, because they can do nothing except viewing content.  It is possible to control what registered users can read and what not, thanks to a wonderful plugin called “Frontend User Access” by Carsten Engel from

With this plugin you can serve users content like articles, video, audio etc, … based on custom user groups they belong to. You first create your custom groups, giving them a convenient name related to the subscription plan. Then indicate which content can be viewed per group. With the free version of the plugin, you assign reading rights per article. You can give one group also access to some pages of another group, this is completely customizable because you can determine this per article. Thus, you can create vertical levels of subscriptions too. Let’s say Gold can view Gold, Silver and Bronze videos, Silver can view Silver and Bronze and Bronze can only view Bronze content.  It is just a question of ticking boxes on and off, that is all.

When a logged in user tries to read a page that is not meant for him, you can display a custom message indicated that the article or video is off limits. Below you see a sample screenshot:

No access to page

With the pro version of the plugin, you can hide menus and modules from unauthorized users, but in this article we limit ourselves to the options of the free version because it can be interesting to show a visitor what he is missing. That said, if can become user unfriendly to show loads of pages that are inaccessible, so there will come a point when you want to step over to the pro version. You can read all about the pro version on

Case study

For instance, on, we sell 3 types of license packages of the S3Media Pro extension and one completely unrelated, namely the JW player license. Depending on the license package, users can get access to dedicated support- and update pages. The only thing we had to do was to create 4 user groups and assign each  customer to a group as you can see below in the example setup:

Fronten User Access admin

We had already existing customers in our database before we stumbled upon the Frontend User Access plugin, but conveniently, the existing users are automatically listed under the Users tab, so we didn’t need to setup a new list. What a relieve!

Once the users were assigned to a usergroup, the only task left was to indicate which article could be read by which group(s).

It is just a question of ticking boxes on and off, that is all.

So, we arranged it that everybody, logged in or not, can read the general information, demo’s and free tutorials. Buyers of S3Media Light can access those pages as well and the ones that relate to their product, like updates, support etc, …S3Media Pro customers and S3Media 2-in-1 license holders can view all pages and have access to support articles exclusively for them. The unrelated JW player license holders only have access to the general pages, demos and free tutorials.  No access to S3Media support, although they can contact support with specific questions, just like all customers.

Some ideas

Now, replace the content of the case study above with videos and audios and you can imagine what you can do with this. For instance:You can have free and paid video tutorials.  The free tutorials act as teasers for the paid ones.  Then you can have a whole range of video tutorials and podcasts since you can have an unlimited amount of groups. You can create a vast library of video & audio categories and create subscription plans per category.  With the pro version this is even easier, but I recommend you test the free plugin first.

Then, if you sign up for an S3 Amazon account, you can take advantage of their high performance content delivery network and even use expiring URLs to protect your videos from leeching. For this, you can use our own Joomla extension S3Media Pro.


There is one disadvantage to this approach: You have to assign the subscription plan by hand, it cannot be automated. You can ask users to register themselves but ultimately, you have to assign the access group afterward. Normally, that is not really a problem, and so far, it hasn’t been a problem on our site, but if you get loads of customers, it might get out of hand.

There are completely automated systems but they involve quite a few rather complicated extensions like VirtueMart combined with OSE Membership Control. The support staff of told me this:

Do you sell your products using VirtueMart? If so, our OSE Membership Control can handle this.
You can create a membership and use this membership to control the articles they can view. Then install our Membership Control for VM add-on to link them together, and set the linked product in the membership. If a user buys the product via VM, he will be automatically added to the memberships hence have the access to the restricted contents.

As I’m personally not that fond of VirtueMart, I didn’t investigate this extension further, but it has a good reputation and if you plan things big, you might be interested exploring OSE Membership Control instead.


4 thoughts on “Joomla: How to serve videos based on subscription type”

  1. Hi @Audials,

    You cannot post them directly, but if you send them to me, I can post them after approval. I’ve sent you an email to discuss this further.

Leave a Comment

S3Media Stream 7 banner
Do NOT follow this link or you will be banned from the site!