Skip to main content

Lesson Content

Lesson Content

Renders the body of the current lesson — whatever was written in the lesson's WordPress editor — inside an Elementor widget you can align, colour and split into columns. While the lesson is drip-locked it renders a replacement message of your choosing instead.

Lesson Content widget rendering a lesson's editor text on a lesson page

Usage

Lesson template — Place it in a lesson template built with Elementor's Theme Builder so every lesson's editor content appears in the same spot with the same styling; see How to Build a Lesson Template. Add Lesson Video or Lesson Audio above it and Mark Complete Lesson plus Lesson Navigation below it.

Drip-locked lessons — Use the Content To Show editor to tell students when the lesson opens. It accepts dynamic tags and shortcodes, so you can insert the Lesson Drip Countdown tag to show a live countdown to the release date.

Text inside another layout — If you only need the lesson text as a value (for example inside an Elementor Text Editor widget with its own styling), use the Lesson Content dynamic tag instead of this widget.

How it works

The widget reads the lesson from the page being viewed and needs no configuration.

SituationBehaviour
Lesson is available (no drip schedule, or the drip date has passed)Renders the lesson's editor content. Block-editor content is rendered block by block, skipping any LifterLMS blocks (syllabus, continue button, progress bar, pricing table, instructors, course information, lesson progression, lesson navigation) so they do not double up with the equivalent Lifter Elements widgets. Classic-editor content is output as written. Shortcodes in either kind of content run.
Lesson is drip-locked (release date still in the future)Renders the Content To Show text instead, wrapped in a le-drip-content-show div. Dynamic tags and shortcodes in that text run.
Visitor can bypass LifterLMS restrictions (administrators, or roles granted Unrestricted Preview Access in LifterLMS > Settings > General)Drip is ignored and the lesson content always renders.
Lesson has no editor contentRenders nothing on the front end. In the Elementor editor it shows a notice and placeholder text so you can still style the widget.
Widget is not on a lesson pageRenders nothing on the front end (placeholder text in the editor).

The widget does not check enrollment on its own: a visitor who reaches the lesson page sees its content whether or not they are enrolled. Access to the page itself is governed by LifterLMS's restriction settings, which normally redirect non-enrolled visitors before this widget runs. To hide or swap the widget for specific visitors, use the Conditional Logic section on its Advanced tab.

Drip is computed from the lesson's LifterLMS Drip Settings: a fixed date and time, days after the course start date (only when the course has a time period set), days after the student's enrollment, or days after a prerequisite lesson is completed. When the schedule cannot be computed for the current visitor — an enrollment-based drip for someone not enrolled, or a prerequisite-based drip whose prerequisite is not yet complete — the widget treats the lesson as available and renders the content.

Settings

Content — Lesson Drip Restriction

SettingDescription
Content To ShowRich-text editor for what renders in place of the lesson content while the lesson is drip-locked. Accepts dynamic tags and shortcodes. Default: Lesson content is restricted by Drip time in future.

Style — Text

SettingDescription
AlignmentText alignment of the content: Left, Center, Right or Justified. Responsive.
Text ColorColour of the content text. Defaults to the site's global Text colour.
TypographyFont family, size, weight, line height and spacing for the content. Defaults to the site's global Text typography.
ColumnsSplits the content into 1–10 CSS columns; Default keeps a single flow. Responsive.
Columns GapSpace between those columns, in px, %, em or vw. Responsive.

Advanced

The Advanced tab holds Elementor's own layout, motion, responsive and custom-CSS controls — see Elementor's documentation. Lifter Elements adds one section, Conditional Logic, which shows or hides this widget by the visitor's LifterLMS status — see the Conditional Logic reference.

Notes