February 4, 2024

How to Create a Video Streaming/ education Platform on Your Shopify Store

In the dynamic world of e-commerce, diversifying your product offerings is key to staying competitive and relevant. For Shopify store owners, this means exploring beyond physical goods to the realm of digital products, particularly videos. Whether it’s for educational content, entertainment, workshops, or tutorials, selling videos directly from your Shopify store opens up a new avenue for revenue and customer engagement.

This comprehensive guide is designed for Shopify store owners looking to expand into the realm of digital video sales. We’ll cover everything from setting up your products with the right tags and Metafields, to creating a custom video streaming template using Shopify’s Liquid templating language. By the end of this tutorial, you’ll have a clear path to offering your customers a seamless experience to purchase and view videos right from your Shopify store.

Section 1: Setting Up Your Shopify Store for Digital Products

1.1 Introduction to Digital Products on Shopify

Digital products are non-physical assets sold and distributed online. In the context of Shopify, these can range from e-books and software to music files and, of course, videos. The beauty of digital products lies in their ease of distribution and potential for passive income - once set up, they can be sold indefinitely without the need for restocking or shipping.

1.2 Categorizing Products as Videos

To begin, ensure your Shopify store is ready to handle digital products. Here’s how you can categorize your products as videos:

  • Navigate to your Shopify admin dashboard.
  • Go to ‘Products’ and then ‘Add Product’.
  • In the product creation page, under ‘Type’, enter ‘Video’ or a more specific category like ‘Tutorial Videos’ or ‘Fitness Videos’. This helps in organizing and managing your inventory.

1.3 Using Tags and Metafields for Video Products

Proper organization is crucial in e-commerce, and this is where tags and Metafields come into play.

Tags: These are keywords associated with your product. For video products, tags can include genres like ‘educational’, ‘workout’, or specific themes like ‘Photoshop tutorial’. To add tags:

  • In the product creation or editing page, scroll down to the ‘Tags’ section.
  • Enter relevant tags separated by commas.

Metafields: Metafields in Shopify allow you to store extra information for your products, which is particularly useful for digital items. For video products, you can use Metafields to store the video URL. Here’s a basic guide:

  • Install a Metafield editor app from the Shopify App Store, as Shopify’s default interface doesn’t provide direct Metafield editing capabilities.
  • Once installed, open the app and locate the product you want to add Metafields to.
  • Add a new Metafield. Name it ‘video_url’ and paste the video link in the value field.

Section 2: Understanding Shopify Liquid and the Need for Customization

2.1 Introduction to Shopify Liquid

Shopify Liquid is a powerful and flexible template language created by Shopify. It's used to load dynamic content on storefronts. When you're working with digital products like videos, knowing the basics of Liquid is essential, as it allows you to manipulate the storefront to suit your specific needs.

Liquid uses a combination of tags, objects, and filters to load dynamic content. For our purpose, we’ll use Liquid to create a custom page template that lists purchased videos for logged-in users.

2.2 Why Customization is Necessary

Out-of-the-box, Shopify offers robust e-commerce functionality. However, it's often necessary to go beyond these default features, especially when dealing with unique product types like videos. Customization allows you to tailor the shopping experience, making it more engaging and user-friendly for your customers.

2.3 Basic Overview of Liquid's Capabilities

Liquid can interact with all parts of your Shopify store, from manipulating product data to customizing the layout of different pages. For our video platform, we’ll mainly use Liquid to:

  • Check if a user is logged in.
  • Retrieve a list of purchased items from the user’s order history.
  • Display videos based on specific conditions like tags and Metafields.

Section 3: Creating the Video Display Template

3.1 Step-by-Step Guide on Creating a New Liquid Template

Creating a new template in Shopify is straightforward:

  • From your Shopify admin, go to 'Online Store' and then 'Themes'.
  • Find your current theme and click on 'Actions', then 'Edit Code'.
  • Under the 'Templates' directory, click 'Add a new template'.
  • Choose 'page' as the template type and give it a descriptive name, like 'video_dashboard'.
  • Click 'Create Template'. This will open a new Liquid file where you can write your custom code.

3.2 Explanation of Liquid Code for Displaying Videos

Here’s an example of what your Liquid code might look like:

This code checks if a user is logged in and iterates through their orders to find products with the 'user-video' tag. It then retrieves the video URL from the product's Metafields and displays it using an iframe.

3.3 Integrating Customer Accounts

The above script inherently integrates with customer accounts by using the customer object, which is a built-in object in Shopify Liquid. This object contains data about the currently logged-in customer, including their order history.

3.4 Code Snippets and Explanations

In the provided snippet:

  • {% if customer %} checks if a customer is logged in.
  • The for loops iterate through the customer's orders and their individual line items.
  • The if statement checks for the 'user-video' tag.
  • The video_url is pulled from the product's Metafields and used in an iframe to display the video.

Section 4: Implementing the Video Loader

4.1 The Necessity of a Loading Animation

When dealing with video content, especially hosted externally on platforms like Vimeo or YouTube, load times can vary based on the user’s internet speed. Implementing a loading animation enhances the user experience by indicating that the video is in the process of loading, thus improving the perceived performance of your store.

4.2 Detailed Explanation of HTML, CSS, and JavaScript for the Loader

Here’s how to implement a simple but effective loader:

HTML:Add a loader div in the video wrapper for each video iframe.

CSS:Define the styles for your loader. A common approach is to use a spinning animation.

JavaScript:Utilize the Vimeo Player API to detect when the video is ready and then hide the loader.

Section 5: Testing and Deployment

5.1 Best Practices for Testing

Before deploying your changes, it’s crucial to test the functionality thoroughly:

  • Test with different user accounts, including those with and without video purchases.
  • Check the functionality across various browsers and devices to ensure responsiveness and compatibility.
  • Verify that the loader appears and disappears as expected.
  • Ensure that all videos are playable and that the user interface remains intuitive and user-friendly.

5.2 How to Deploy Changes on Shopify

Once you are satisfied with your local testing:

  • Go back to the Shopify admin panel, and under 'Online Store' > 'Themes', find your theme.
  • Use the code editor to implement your changes or upload your modified files.
  • It’s recommended to update a backup of your theme first, in case you need to revert changes.

5.3 Troubleshooting Common Issues

  • If videos are not loading, check the video URLs in the Metafields for correctness.
  • In case the loader doesn’t disappear, ensure the Vimeo Player API is correctly linked and the 'loaded' event is firing.

Section 6: Enhancing User Experience

6.1 Tips for Improving Visual Layout

  • Consider adding a title or description for each video for better context.
  • Implement a grid or list layout for a more organized display of multiple videos.
  • Use CSS media queries to ensure the layout adapts well to different screen sizes.

6.2 Ensuring Mobile Responsiveness

  • Test your video display on various mobile devices.
  • Use responsive design principles to ensure the videos and loader display correctly on smaller screens.

6.3 Additional Features to Consider

  • Adding search functionality to help users find specific videos.
  • Categorization or tagging of videos for easier navigation.
  • Offering previews or trailers for the videos to enhance engagement.

Section 7: Conclusion

Developing a platform for selling and streaming videos on your Shopify store is an excellent way to diversify your product offerings and engage with your audience. By following the steps outlined in this tutorial, you can create a seamless and professional video streaming experience for your customers. Remember, the key to success in e-commerce is constant innovation and adaptation to your customers' needs.

We encourage you to explore further customizations and functionalities that suit your specific store and audience. As always, we value your feedback and experiences in implementing these features on your Shopify store.

Additional Resources

For further learning and exploration:


Every Thursday, I deliver actionable insights. Helping readers
to design a scalable business.