Search Posts


How to Run a Virtual Classroom Online with WordPress (Tools)

Free WordPress Video Tutorials on YouTube by WPBeginner
How to Run a Virtual Classroom Online with WordPress (Tools)

Running a virtual class with WordPress for free

What You'll Need to Run Your Class Online (Virtual Classroom)

To run a class online, you'll need these 3 things:

  • A website
  • A way for students to sign up
  • A way to communicate by email.

You may also want these 4 things:

Creating an Online Platform for Your Class

It's possible to run an online class Facebook and YouTube, but that is not ideal.

An alternative is to sign up for a site like Teachable. This is popular, but not free ($29/month + 5% fee for each student).

Instead  we recommend that you create a website for your class (website builder) with WordPress (free) with domain name and web hosting.

Bluehost is offering domain name + web hosting for $2.75/month for first year (60% off).

→ Click Here to Get This Exclusive Bluehost Deal ←

Or try SiteGround hosting company (discount for small business owners).

Install WordPress. Install WordPress plugins (like apps for your WordPress site) that lets you add contact forms, membership restrictions, etc.

Important plugins to help you run your online class.

Getting Students to Sign Up for Your Class

We recommend using the WPForms plugin (free) for WordPress. It lets you create registration forms. Free, but you may want to pay for the Pro version of WPForms, so you can integrate payments with your form.

Then you can follow WPForms' instructions to create an event registration form.

Thisi is how a simple registration form for a free class could look:

A simple registration form for an online class, showing name, email, a dropdown asking for level of experience, and a comment box

Communicating With Your Students in a Virtual Classroom

You'll need a way to communicate with students, remind students, a way to follow up, and let them know you created another class.

You could send messages on Facebook or WhatsApp, but email is better because everyone has email. Also, people are used to giving out their email address when signing up online. (Asking them for their mobile number or Facebook details will put many students off from registering).

Use a reputable email marketing service

We recommend using Constant Contact. (free trial).

If you're creating a membership site, we recommend using either ConvertKit or Drip for your email service. (They have advanced marketing automation features).

For free email marketing service we recommend  SendinBlue or MailerLite.

With WPForms you can integrate your form with your email marketing service so students will be automatically added to your email list when they sign up.

WPForms Lite works with Constant Contact, and if you pay for WPForms Pro, then you can choose from many other email marketing integrations.

Integrating WPForms with an email marketing service

Student Collaboration and Group Interactions in Virtual Classroom

Do you want your students to be able to interact with one another? If students are on Facebook, then a private Facebook group could be a option. Alternatively, you can create a forum on your website. We recommend bbPress plugin for this.

Another option is to create a private Slack channel for students.

If you'd like students to be able to interact with one another live, you'll want to look at how you deliver your classes. Zoom, is a tool for interactive live video classes.

Important: If you're running a class at children, it's not a good idea to allow them to contact one another.  You could provide a space where parents can interact.

Offering Pre-Recorded Content for Online Classrooms

One way to run an online class is to record content ahead of time and add it to your site.

You'll need a webcam for recording a video of yourself. You'll also need a microphone:  how to start a podcast.

You could use your computer's built-in microphone and webcam. But higher quality will help you produce better recording.

You may also want to record your screen to show PowerPoint. You can do this using screen recorder software, or run a Zoom call and record it. 

Pre-recorded content is great option for a class that you want to run over and over again. 

It is important not to host your videos yourself – this might slow down or crash your website.

Instead use one of our recommended free video hosting sites. That way, you can simply embed the video on your site.

If you want to password protect we recommend creating a membership site. This lets you charge different amounts for different levels of access.

Offering Live Content in Online Classrooms

You may want to teach your class live for a class that you used to teach in-person.

For live classes, we strongly recommend Zoom. It's a tool that lets you host video calls with as many people as you want (free but then your calls can't be longer than 40 minutes).

You can schedule meetings in advance and send out an invite to your students. They can click a special link to sign in on their computer, or they can use the Zoom app on their phone.

The special URL that allows students to join your class meeting

Zoom has lots of useful options. For instance, you can use it to share your screen with students. This means you can show PowerPoint slides or demonstrate an online process.

You can even use Zoom to present using an iPad, and then you can combine with the Notability app to create visual notes as you go along.

Zoom lets you see your students, too. They can dial in with their cameras on, if you want. They can also talk to you live, though you can mute them!

We recommend that you mute everyone by default while you're teaching your class. You can let students ask questions at the end.

There's also a text chat feature in Zoom, which students can use to interact with one another while you're teaching. You can even poll your students to find out what key topics they most want you to cover.

You can also record Zoom calls. This means you can run a live class plus recordings that you offer for students who can't attend live.

The paid version of Zoom lets you run webinars, too. You can integrate your WPForms registration form and Zoom using Zapier. This lets you automatically sign people up for the webinar when they register for your class.

Using Zapier to connect WPForms and Zoom

Using an LMS or Membership Site Plugin

Do you want to turn your website into a virtual classroom? Or perhaps you want to lock content to make sure that only paid-up members can access it?

You'll need to pay for this functionality, but it could well be worth it if you're running a series of classes. Using your site as a learning platform works well for classes that last more than a few weeks.

For instance, you might be running a 12 week class. Students need an easy way to refer back to the earlier weeks' material, and that will be tricky if you simply send out all the content by email.

With an LMS (Learning Management System) solution, you can even offer quizzes and grade students' performance. You'll need an LMS plugin for WordPress.

Our top recommendation here is LearnDash. It lets you create as many different courses as you like, with lessons, topics, quizzes, and categories. You can schedule lessons to be released over time, if you want.

With LearnDash, you can also offer quizzes and tests for your students. You can even set assignments that you can approve and comment on. It also lets you create course-specific forums where your students can interact.

For more details, see our guide on how to create an online course with WordPress.

What if you don't want a whole learning environment, but instead you want to lock content on your site? You can do that with a membership site plugin.

We recommend using MemberPress as your membership site plugin. It's easy to set up and has powerful access controls. You can restrict access not only to posts and pages but also to specific categories, tags, files, and more.

The MemberPress deal's front page

You can use MemberPress to "drip" content to your students. This means they only get access to certain content after they've been a member for a specified period of time. You can even integrate it with LearnDash if you want.

For more details, see our ultimate guide on how to create a membership site.

Final Thoughts and Best Practices

We know there's a lot to consider when setting up a virtual class. You can set up a simple class for free on your WordPress site. You'll only need to pay for your website domain name and web hosting, which doesn't need to cost much.

Make sure you use a reputable email marketing service to contact your students. We recommend Constant Contact, which has a free trial. If you want a fully free solution, try SendinBlue or MailerLite. You can even use email as a simple way to deliver class content.

If you want to teach on live video or through screen sharing, then Zoom is a great option. The free level offers a really generous set of features.

To run an ongoing class through your website, you'll want an LMS or membership site plugin. We recommend LearnDash as the best LMS plugin, and MemberPress as the best membership site plugin.

We hope this article helped you learn how to run a virtual classroom with WordPress. You may also want to see our guide on the must have WordPress plugins for all websites.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. Trusted by over 1.3 million readers worldwide.

The Ultimate WordPress Toolkit



  1. Congratulations, you have the opportunity to be the first commenter on this article.
    Have a question or suggestion? Please leave a comment to start the discussion.


Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.

Leave a Reply

Your email address will not be published. Required fields are marked *