18

Case Study – Online Academy with Joomla

In the previous chapter, we explored a case study in which Joomla was serving as a content management system for a corporate website.

In this chapter, we’ll explore another case study, showing how Joomla has been used to build and manage an online academy.

After reading this chapter, you will be able to do the following:

  • Understand how Joomla could manage a subscription-based website
  • Understand how Joomla is serving online learning materials to thousands of learners.

Introduction

In this case study, we’ll see how Joomla can be used to build a complete online learning portal, providing access to courses, lessons, and related tests for its subscribers.

An online academy has several requirements, especially when access to the learning material needs to be limited to subscribed users.

The academy website existed for years and used standard Joomla articles to render the courses’ materials. A new development was needed to improve the user experience and increase the engagement of learners. Let’s see the goals of the project.

Note

The website analyzed in this case study is available in the Italian language only.

Project goals

The company started a project to rebuild the website of the academy, defining the following requirements in terms of functionalities and goals:

  • Allow users to access content only with a valid subscription
  • Provide subscriptions with different subscription duration
  • Allow subscribers to track their progress in a specific course
  • Automatically release a completion certificate when a student completes a course

The website features a series of pages that present each of the available classes, describing the course structure, the number of lessons, and an introductory video.

Furthermore, it includes a private area dedicated to subscribers in which users would be able to manage their subscriptions, access courses, and learning paths, and download their certificates.

In the next section, we’ll see why the company chose Joomla to create its website.

Why Joomla?

The company had already used the previous version of Joomla to build several internal and client-facing websites. Furthermore, the academy website itself was built in Joomla 3.x; therefore, choosing Joomla 4 was a natural choice.

The adoption of Joomla 4 represented the perfect moment to reimagine the user experience and build a completely new subscriber area and improved course pages.

In the next section, we’ll analyze the solution implemented by the company.

The solution

The website was to include two main features:

  • Sell subscriptions
  • Allow users to view learning materials once they have a valid subscription

To manage the subscriptions, the company decided to continue using Membership Pro, an extension that allowed the team to create subscription plans and set several options based on the status of the subscription.

For example, when the subscription is valid, the user gets added to a specific user group in Joomla, linked to a specific access level, allowing them to access contents restricted to such an access level.

At the same time, whenever the subscription expires, the user gets removed from such user group and the access to content is automatically removed.

The academy offers three types of subscriptions, with duration as the only difference between them, so the configuration for all the subscriptions is nearly the same. With any subscription, in fact, the user can access all the contents of the academy for 1 month, 3 months, or 12 months.

Membership Pro allowed the team to handle the whole sales process, including the payment methods, thanks to the integration with PayPal and many other offline and online payment plugins. With PayPal integration, the company was able to collect payments through credit and debit cards and PayPal accounts. For a specific subscription plan, the company set the automatic renewal of the subscription through PayPal automated payments.

As mentioned earlier, the ACL controls of Joomla have been crucial in the setup of this website, since access levels and user groups were widely used in connection with the subscription plans and their status. In fact, a custom access level and a user group have been created and assigned to users when subscribing, as well as removed once the subscription elapsed.

Once the subscription part was defined, the team focused on improving the learning experience. In fact, the previous version of the website used standard Joomla articles and categories to propose the course contents to subscribers. This resulted in several limitations, including the lack of learning progress tracking and the need to create complex custom layouts to display the courses.

The team, after thorough research, decided to adopt OSCampus Pro as the Learning Management System (LMS). OSCampus was selected due to its simple structure and its features. In fact, it allows you to do the following:

  • Organize lessons in courses and courses in learning paths
  • Track the progress of lessons in each course
  • Handle exams/tests at the end of each course
  • Automatically issue a certificate when a test is passed

All these features were identified in the list of project goals, so the extension resulted in the right choice for the website.

In OSCampus, the team organized the courses in learning paths by topic and loaded all the lessons of each course. To host videos for the lessons, the team decided to use Vimeo to reduce server workload and benefit from a professional video streaming platform. The team also produced a short evaluation test for each of the courses, which required a score above 70% to pass it and obtain the certificate.

In each lesson, most of the screen area is dedicated to the video player. The page also shows the commands to navigate between lessons or to go back to the course index, as shown in Figure 18.1.

Figure 18.1 – Online academy – single lesson

Figure 18.1 – Online academy – single lesson

For each course, a recap page is available in which there is a list of lessons, as shown in Figure 18.2.

Figure 18.2 – Online academy – list of lessons

Figure 18.2 – Online academy – list of lessons

All the courses and lessons have been assigned to a specific access level so that they are accessible only to users with a valid subscription.

At the time of writing, the academy hosts more than 1,200 video lessons, in more than 100 courses, and manages more than 8,000 subscribers.

Another important goal was to improve the user experience for subscribers. To do so, the team created a user dashboard using SP Page Builder, as shown in Figure 18.3.

Figure 18.3 – Online academy – user dashboard

Figure 18.3 – Online academy – user dashboard

From the dashboard, the subscriber can access the available courses, check their progress, download their certificates, check their subscription, manage their subscription, manage their account, access additional services and materials, and log out from the reserved area.

One of the most requested features was the one that allows subscribers to track their progress. This has been accomplished thanks to a specific view of the OSCampus component that creates a page displaying the completion status of each course started by the subscriber, as shown in Figure 18.4.

Figure 18.4 – Online academy – course progress

Figure 18.4 – Online academy – course progress

When all the lessons are completed and the test is passed with a grade above 70%, a completion certificate is issued automatically and is available for download on the specific page of the user dashboard.

Beyond the new user dashboard and all the features dedicated to subscribers, the team also worked heavily on the public website, creating new pages for each course. To simplify the design process, the team adopted Helix Ultimate as a template framework and SP Page Builder to easily create stunning pages.

For each course, the team built a page that displayed the course title, a preview of the first video lesson, and a description of the course, as shown in Figure 18.5.

Figure 18.5 – Online academy – course presentation

Figure 18.5 – Online academy – course presentation

Furthermore, for each course, the team created a table of contents, shown on the course presentation page, as displayed in Figure 18.6.

Figure 18.6 – Online academy – course table of contents

Figure 18.6 – Online academy – course table of contents

This new website structure and the improved user experience offered by the user dashboard allowed the academy to increase its subscription and engagement rates. This was because users could now find more information about the academy and its courses on the public website and could easily track their progress and download their certificates.

In the next section, we’ll discover which extensions have been used for the project.

Extensions used

Besides the custom modules developed specifically for the project, there were a few extensions used on the website:

  • Akeeba Backup: Used to quickly create backups on the fly, while working on the website
  • GDPR by J!Extensions Store: Used to manage cookie mapping and classification, display a cookie bar, and comply with privacy regulations
  • Membership Pro by JoomDonation: Used to sell and manage subscriptions
  • OSCampus Pro by JoomlaShack: Used to manage courses, lessons, and learning paths
  • LiteSpeed Cache: Used to unleash the benefits of caching functionalities offered by the server
  • SP Page Builder: Used to build pages quickly

Overall, the team tried to keep the number of extensions used to the bare minimum, to reduce security risks and the footprint on website performance.

With the list of extensions used on the website, we have completed this case study.

Summary

In this chapter, we went through a case study that shows the implementation of Joomla 4 to manage an e-learning portal. Joomla has been used to handle the subscription sales and, thanks to ACL, grant proper access to learning resources.

In the next chapter, we’ll analyze another case study, creating a Bed and Breakfast (B&B) website with Joomla.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset