TutorLMS is a popular WordPress LMS plugin for selling and delivering courses. Because TutorLMS runs on WordPress, you can use the SmartVideo WordPress plugin’s built-in [smartvideo] shortcode to drop optimized videos straight into your lessons.
If you don’t have a SmartVideo account yet, create one at dash.swarmify.com/signup. Once you’re registered, head back here to get set up.
Step 1: Install the SmartVideo WordPress plugin
- In your WordPress admin, go to Plugins → Add New.
- Search for SmartVideo and install the plugin published by Swarmify.
- Activate the plugin.
- Copy the Swarm CDN Key from the Dashboard tab, the first screen after you log in to your Swarmify Dashboard.
- From the WordPress admin sidebar, click SmartVideo, paste your unique Swarm CDN Key into the field on the Setup tab, and click Enable SmartVideo.
The plugin handles the JavaScript snippet for you, so you don’t need to paste anything into your theme header.
Already have lesson videos on Vimeo? With the plugin activated and Vimeo auto-conversion on, existing Vimeo embeds convert automatically — no embed code changes required. SmartVideo imports Vimeo videos whose Who can watch setting is Anyone; password-protected and Only me videos stay on Vimeo. Open each lesson page containing a Vimeo embed once while logged in. See Migrating from Vimeo to SmartVideo.
Step 2: Use the [smartvideo] shortcode in lessons
You have two places to put the shortcode in a TutorLMS lesson:
Option A — Lesson content body (most reliable)
In the lesson editor, paste the shortcode anywhere in the lesson description or content area:
[smartvideo src="https://your-video.example.com/file.mp4"]
Replace the src value with the direct URL of your hosted MP4 (your own server, S3, Dropbox direct link, your WordPress Media Library, etc.). Swarmify will optimize and deliver it from there.
The source must return the video bytes to an anonymous request, without a login, and remain available for as long as the video is embedded. Do not use an expiring or signed URL.
That source URL is written into your page’s HTML, so anyone viewing your page source can find it. If keeping the original out of reach matters to you, upload the video to your SmartVideo Library and embed the swarmify:// reference instead.
Option B — Lesson video field
In the TutorLMS lesson video settings, choose whichever embed / HTML / shortcode option your version offers and paste the shortcode there. If your version of TutorLMS won’t accept a shortcode in the dedicated video field, fall back to Option A — it’ll render in the same place visually for most TutorLMS themes.
Optional shortcode attributes
If you need them, the [smartvideo] shortcode supports the same attributes as the HTML tag:
[smartvideo src="https://your-video.example.com/file.mp4"
poster="https://your-video.example.com/cover.jpg"
controls="true"]
Common attributes: poster, autoplay, muted, loop, controls, playsinline.
What happens after I install?
The first time a lesson loads, Swarmify will fetch your source MP4 and start re-encoding it for optimized delivery. This usually takes about as long as the video runs, so a 10-minute lesson video takes about 10 minutes. While it’s processing, the player still works — it just serves the original until the optimized version is ready.
If a lesson video doesn’t appear after publishing:
- Make sure the
srcURL points to a direct video file (.mp4,.webm, etc.), not a YouTube or Vimeo page URL. - Check that the SmartVideo plugin is activated and connected under SmartVideo in your WordPress admin sidebar.
- If you’re using a page builder for the lesson layout, confirm it isn’t escaping the shortcode into plain text.
Related articles
- Install SmartVideo on WordPress
- How to configure SmartVideo to work with LearnDash Video Progression
Hosting course video? See the LMS video hosting overview.
Keywords: tutorlms, tutor lms, lms, course, lesson, shortcode, [smartvideo], wordpress lms, online course