Course Access Settings

Course Access Settings

The course access settings allow you to define a set of criteria for how a user gains and maintains access to your course. We』ll go through all the options, some of which include a one-time payment, recurring payments, free access, prerequisites and more.
Table of Contents [show]1 Locating Course Access Settings2 Access Mode2.1 Open2.2 Free2.3 Buy Now2.4 Recurring2.5 Course Enrollment URL2.6 Closed3 Course Prerequisites4 Course Points4.1 Required for Access4.2 Awarded on Completion5 Course Access Expiration6 Alter Course Access List6.1 Was this article helpful to you?
Locating Course Access Settings

Navigate to LEARNDASH LMS > COURSES
Click on the course you want to edit
Click on the Settings tab at the top of the page
Locate the section titled 「Course Access Settings」

Access Mode
Access mode is how you determine the way in which someone can gain access to a course (completely free, free with registration required, one-time payment, recurring subscription, etc.). LearnDash has 5 course access modes to choose from.
Open
The following rules apply to Open courses:

Free & open to anyone visiting your site
No registration, login or payment is required for access
Must be registered/logged in to track course progress
Linear Progression does not apply

NOTE
If you have Open courses on your site, as soon as someone registers an account, they will automatically gain access to all Open courses.
Free
The following rules apply to Free courses:

Must be registered/logged in to access
No payment is required
「Take this Course」 button is shown to users not yet enrolled. They are sent through the registration process. If you』re using LearnDash』s customized login & registration, the button will say 「Login to Enroll.」

The Free access mode is a good choice if you want an administrator to manually enroll students into the course.
Buy Now
The following rules apply to Buy Now courses:

Must be registered/logged in to access
Requires a one-time fee to be paid (no free access)
Only works with the following payment methods: PayPal, Stripe & 2Checkout
Do not use if you』re selling courses via a shopping cart or membership plugin (see Closed below)

The Buy Now access mode does not allow you to use discounts/coupons. Consider using an ecommerce or membership integration, along with the Closed access mode.
When using the Buy Now mode, you need to enter a price in the Course Price field.

First, select the Buy Now access mode
Then, enter your price in the Course Price field

Enabling the 「Buy Now」 access mode also allows you to let your users use their achievement points to purchase a course. Here』s how to do it using the Achievements Add-on.
NOTE
For both 「Buy Now」 and 「Recurring」 access modes, the user will be automatically enrolled into the course upon a completed payment.
Recurring
Recurring is very similar to Buy Now, except for recurring payments (as opposed to one-time payments).
The following rules apply to Recurring courses:

Must be registered/logged in to access
Requires a recurring fee (choose a billing cycle in X days, weeks, months or years)
Only works with the following payment methods: PayPal, Stripe & 2Checkout
Do not use if you』re selling courses via a shopping cart or membership plugin (see Closed below)

To set up the Recurring access mode:

Select the Recurring option
In the Course Price field, enter the amount you』d like to charge
Enter the amount of days/weeks/months/years on which you』d like the user to be billed again
Choose either day(s), week(s), month(s) or year(s) from the dropdown

NOTE
If choosing day(s), you must provide a number between 1-90.
You also have the option to control the recurring subscription with the following fields:

Recurring Times – determines how many times the billing cycle repeats. Leave empty for unlimited repeats
Course Trial Price – fill this out if you want to have a trial period for the course with a special 「trial」 price
Trial Duration – determine length of the trial period. After the trial is over, the normal course price billing goes into effect.

Course Enrollment URL
This field allows you to set a per-course redirect on your courses. Fill this out with the URL where you want your users to be redirected to after registration or enrollment.

You may have courses that you want to upsell, other offers, or even other course materials you want the users to download first, this setting will help you redirect the users to those pages after enrollment. They will also be automatically logged in and registered if they register on the native LearnDash Registration page.
NOTE
This option is only available for the 「Recurring」 and 「Buy Now」 options.
Closed
The following rules apply to Closed courses:

Must be registered/logged in to access
Allows you to sell your course via an ecommerce or membership add-on
Enables a custom Button URL field, which sends users to a custom sales or checkout page (a button is only shown if you enter a URL)
Manually enroll users into the course, or add them via group enrollment

When you choose Closed, you are essentially telling LearnDash to restrict access to your course, but don』t do anything else. You either let an ecommerce/membership add-on handle course access, or manually add users yourself. You can also add users to the course via group enrollment.
To redirect the Take this Course button to a custom URL:

First, select the Closed access mode
Then, enter the URL where you』d like the button to go

Course Prerequisites
Prerequisites allow you to choose another course (or courses) that a user must complete before taking this course. When selecting a course(s), you have two options:

Any Selected (default)
If a user has completed any one of the selected courses, they will be able to access this course.
All Selected
The user must complete all selected courses in order to access this course.

To add a course prerequisite:

Next to Course Prerequisites, toggle the setting on
Choose either Any Selected or All Selected
Click in the box to search for a course. Add as many courses as you』d like.

To remove a course prerequisite:

Click the x next to the course name

Course Points
Course points are a simple way to incentive your users. They can also be used as a prerequisite for another course.

To enable course points:

Next to Course Points, toggle the setting on

Required for Access
This is the number of points a user must obtain before gaining access to the course.
For example, let』s say you have a few beginner-level courses that each award 50 points upon completion. You might also have an intermediate-level course. If you want the student to complete at least 2 beginner-level courses (2 courses x 50 points/ea. = 100 points) before taking the intermediate-level course, you could set the required for access setting to 100 points.
Awarded on Completion
This is the number of points a user will receive for completing the course. In the above example, all of your beginner-level courses would set this value to 50.
NOTE
The provided examples are just to explain how course points work. You can use any numbers you』d like, and customize the course points to fit your learning curriculum.
Course Access Expiration
With course access expiration, you can choose to provide access to a course for a limited time period, based on the user』s enrollment date (aka: when they signed up for the course).

Next to Course Access Expiration, toggle the setting on
Enter the number of days the course will be available for

This will automatically count that many days from the user』s enrollment date

Choose whether or not you want the user』s course & quiz data to be deleted when access expires

WARNING
Once data is deleted, it is gone forever. If you choose to enable the Data deletion setting, we recommend you make a backup first.
Alter Course Access List
WARNING
We do not recommend manually updating the course access list as it can have unintended negative consequences.
The course access list displays a list of enrolled users by user ID. Each user ID is separated by a comma. Due to a wide variety of add-ons & third-party plugins that affect course enrollment dynamically, this list might not always reflect all enrolled users.
The recommended way to add or remove a user from a course is from the user』s profile page in the WordPress admin area. See user management to learn more.
If you need to alter the course access list:

Next to Alter Course Access List, toggle the setting on
In the box that appears, add or delete the user IDs you want to change. Remember to separate them with commas.

Was this article helpful to you?

Yes

No

2Checkout Integration

2Checkout Integration

The LearnDash 2Checkout integration is one of several options for selling your courses. If you already have a 2Checkout account, or you like what their payment gateway has to offer, you can use this integration to sell courses on your LearnDash site.
NOTE
You will need to register for a free 2Checkout account before you can use this integration.
The 2Checkout integration will allow you to sell courses, but it doesn』t come with a lot of flexibility. If you』re looking for more robust member management, a customizable checkout experience or integrations with other WordPress plugins or services, check out our ecommerce & membership add-ons.
For other simple ways to accept payments, consider our built-in PayPal integration or the free Stripe add-on.
Table of Contents [show]1 Who Should Use the 2Checkout Integration?2 Sign Up for a 2Checkout Account3 Install the 2Checkout Integration4 2Checkout Settings4.1 Enable Instant Notification System (INS)4.2 Merchant Code4.3 INS Secret Word4.4 Approved URL (Header Redirect)4.5 Demo Mode5 Course Configuration6 The User Experience7 FAQ7.1 Was this article helpful to you?
Who Should Use the 2Checkout Integration?
You should consider using the 2Checkout integration if:
✅ you』re looking for a quick & easy way to start selling courses
✅ you want to use the 2Checkout payment gateway
You might not want to use the 2Checkout integration if:
❌ you want to customize the user』s checkout experience
❌ you are creating a fully functional membership site
❌ you』re selling other products in addition to courses
❌ you want to closely manage the account creation & login process
Sign Up for a 2Checkout Account

Navigate to 2checkout.com and follow the instructions for registering a new account
Once your account is set up, you can navigate to secure.2checkout.com to access your account settings, as well as the information you』ll need to set up the LearnDash integration

Install the 2Checkout Integration
Option 1: Add-ons Menu (requires an active LearnDash license)

In your WordPress admin area, navigate to LEARNDASH LMS > ADD-ONS
Locate the 2Checkout for LearnDash add-on
Click Install Now
Click the Activate Plugin button

Option 2: Manual Upload

Download the plugin file (must be logged in to download)
In WordPress, navigate to PLUGINS > ADD NEW
Click Upload Plugin
Browse for the .zip file you downloaded in Step 1
Click Install Now
Click Activate Plugin

2Checkout Settings
To finish setting up the integration, there are a few pieces of information you』ll need to provide to LearnDash. Let』s walk through each one, and show you where to find the information in your 2Checkout account.
All the information you need can be found in your 2Checkout Dashboard.
Enable Instant Notification System (INS)

In 2Checkout, navigate to Integrations > Webhooks & API
Scroll to the Instant Notification System (INS) section
Check the box to enable INS
Click Update

Merchant Code
To locate your merchant code in 2Checkout:

Still on the Integrations > Webhooks & API page
Under the API section, you』ll find your Merchant Code

INS Secret Word
To locate your INS secret word in 2Checkout:

Still on the Integrations > Webhooks & API page
Under the Secret Word section, you』ll find your INS secret word

Now you』ll switch over to your WordPress admin area to enter the information.

Navigate to LEARNDASH LMS > SETTINGS
Click the 2Checkout Settings tab at the top
Enter your merchant code & INS secret word from above

Approved URL (Header Redirect)
This one is a little different. You actually have to provide the approved URL to 2Checkout.

Copy the URL that is displayed in the box
Navigate your 2Checkout Dashboard
Go to the Integrations > Webhooks & API page
Find the Redirect URL section
Check the box to Enable return after sale
Paste the URL in the Approved URL box
In the Return Method dropdown, choose Header redirect
Click Update

Demo Mode
Enable demo mode if you』d like to perform a test transaction, without any money exchanging hands.
After you』ve confirmed everything is working properly, you』ll want to disable this to begin receiving actual payments on your live site.
Course Configuration
After you』ve configured your 2Checkout for LearnDash settings, the final thing you need to do is set up your course to accept payments.

In the WordPress admin area, navigate to LEARNDASH LMS > COURSES
Click on the course you』d like to sell with 2Checkout
Click on Settings at the top
Scroll down to Course Access Settings
Set the 「Access Mode」 to one of two values:

Buy Now: Use 「Buy Now」 for one-time payments
Recurring: Use 「Recurring」 if you』d like to set up a recurring payment (aka: subscription)

And finally, enter your price in the Course Price field. Ex: 29.99

The currency symbol will be added automatically for you
If your price is an even dollar amount, you may omit the decimal point & cents (ex: 29)

For recurring payments, you need to include the 「Billing Cycle」 in days, weeks, months or years.

The User Experience
Now when a user navigates to your course page, and they click the 「Take this Course」 button, they will be redirected to 2Checkout to complete their purchase.
After payment is complete, a new user account is automatically created, and that user is enrolled into the course they just purchased.
FAQ
Does 2Checkout support payments in my country?
Please reference 2Checkout』s list of supported countries.
How do I issue refunds and/or cancel subscriptions for my customers?
Issuing refunds and canceling subscriptions is done from your 2Checkout account, not from LearnDash or this add-on.
Are users automatically removed from a course if they are issued a refund?
No. You can remove the course access from their profile.

Was this article helpful to you?

Yes

No

Create a Certificate

Create a Certificate

Creating a certificate is the first step in the LearnDash certificate process. Once created, you can then assign your certificates to a course or a quiz.
This article will walk you through the certificate creation process.
NOTE
An easier way to create certificates is using our Certificate Builder add-on. You can easily build certificates using the Gutenberg Block Builder using the add-on.
Table of Contents [show]1 Add a New Certificate2 Title3 Featured Image3.1 How to Create an Image4 Content4.1 Certificate Custom Styles (CSS)4.2 Vertical Spacing4.3 Horizontal Spacing (Indentation)4.4 Font Size4.5 Font Family4.6 Color5 Certificate Options5.1 PDF Page Size5.2 PDF Page Orientation6 Certificate File Format7 Previewing Certificates8 Video Tutorial8.1 Was this article helpful to you?
Add a New Certificate

Navigate to LEARNDASH LMS > CERTIFICATES
Click the Add New button

You』ll be directed to a new screen where you can start creating your certificate. Here』s an overview of each type of information that can be added to your certificate.

Title
The certificate title is only for internal use. Your users will not see this title, but it will be the name that appears in dropdown menus when you go to apply it to a course or quiz. Be sure to name it something you』ll recognize.

Featured Image
Adding a featured image is the way in which you apply a design, or style, to your certificate.

IMPORTANT: You must use .jpg images, no more than 1MB in size. This also keeps your loading time to a minimum.
The size of your image should match your page size & orientation (see below). If you』re using an 11″ x 8.5″ US Letter size in landscape orientation, your image should match these dimensions. If you want your certificates to look great when printed, please also use 300 dpi.
You may include text as part of your image. There are no restrictions to what you include in the image, but keep in mind, it will be shown on all certificates to all users. Text contained within an image is not dynamic and cannot be customized for each user.

To add a featured image:

Click the 「Set featured image」 link
Choose an image from your Media Library, or upload a new one
Click the Set featured image button

KNOWN ISSUES
Some image optimization plugins are known to cause issues with certificate images, especially the SG Optimizer plugin from SiteGround. If your images are distorted, or contain large areas of all black, please disable image optimization for the images you』re using for certificates.
How to Create an Image
You can use any image creation or editing program you』d like, hire a designer or use images from a graphics library (please check the license to make sure you have permission). Here are a few suggestions:

Canva allows you to use pre-made templates for free, and add some customization of your own. Small upgrades are available, and very affordable.
Envato Elements is a premium graphics library with tons of pre-made certificate templates.
Creative Market is another premium marketplace where you can find certificate templates, as well as graphics to make your own.
Adobe』s Creative Cloud is also an option for more design-oriented users, or anyone already familiar with their design software (Photoshop, Illustrator, InDesign, etc.). A premium subscription is required.

Content
Your certificate content will mostly consist of dynamic fields that are generated for each individual user who is awarded a certificate. For example:

User』s Name
Course Title
Date of Completion
…etc.

These types of dynamic fields are inserted via shortcodes. We have an entire article dedicated to certificate shortcodes here →
When adding your certificate content, you』ll need to use some HTML & CSS to set up the overall layout, spacing, sizing, etc. We』ll walk you through some common layouts below, and how to achieve various designs.
Certificate Custom Styles (CSS)
If you know your way around CSS codes and styles, you can add your own custom CSS stylesheet to apply globally to all of your certificates. You can find it here:

Navigate to LEARNDASH LMS > CERTIFICATES
Click on the Settings tab
Scroll down to the 「Custom Styles (CSS)」 metabox

By adding your own custom CSS styles, you eliminate the need to constantly re-type and re-style all of the elements that you add to your certificates. You can easily assign classes and IDs to these elements (e.g. paragraphs, shapes, and headings) and then add the styles that will apply globally to all your certificates. This will help you stay on brand.
Vertical Spacing
You might want to insert the course title at the top of a certificate, the user』s name in the middle, maybe at a completion date at the bottom, etc. One of the best ways to control vertical spacing, and move content up or down on your certificate, is to use the line-height property.
Wherever you need to insert some blank vertical space, you can use the following code:

This would add 20 pixels of vertical space. You can adjust the 20px to another value. Since our final certificate uses inches, not pixels, you』ll need to play around with this value to achieve your desired result. (see below for previewing certificates)
You can insert as many of these spacers as you need throughout the certificate.
Horizontal Spacing (Indentation)
There are a few ways to go about horizontal spacing.
If you need to center your text in the middle of the certificate, you can use text-align:center;. Here』s an example of the user』s first name, centered horizontally:

[usermeta field="first_name"]

By default, all text will be aligned to the left edge of the certificate (right edge for RTL languages). If you need to indent something, you can use the text-indent property. Here』s an example of the course completion date being pushed vertically towards the bottom of the page, then indented to move it to the far-right corner.

[courseinfo show="completed_on" format="F j, Y"]

You』ll need to adjust the 150px and 200px values to match up with your certificate image.
Font Size
You can also adjust the font size of any text. Let』s say you wanted your user』s first & last name to be quite large (30px), then a small vertical space (10px), and then the course title not quite as large as the name (20px), you could do this:

[usermeta field="first_name"] [usermeta field="last_name"]

[courseinfo show="course_title"]

Font Family
Different computers come pre-installed with different fonts. Some users will have a font installed, and others might not. So there isn』t a ton of flexibility with using custom fonts in certificate creation. However, you can switch between serif and sans-serif fonts, as both should work for most of your users. Here』s an example using a generic serif font:

Color
You can adjust the color of any text on your certificate. If your image has a dark background, you can use the color property to make your text white.

You can combine multiple properties at the same time. If you wanted to indent the user』s first & last name, adjust the font size, and change the color to red, it would look like this:

[usermeta field="first_name"] [usermeta field="last_name"]

Certificate Options
There are a few additional options you can set for your certificate.
PDF Page Size
Choose between the following options:

US Letter (default): 8.5″ x 11″
A4: 8.3″ x 11.7″

PDF Page Orientation
Choose between the following options:

Landscape (default): width is longer than height
Portrait: height is longer than width

Certificate File Format
When a user earns a certificate, either by completing a course or passing the certificate threshold for a quiz, they』ll be able to download it in PDF format. All LearnDash certificates are provided as a .pdf file.
When a user clicks a button to get their certificate, some web browsers will open the PDF file in the browser, and others might download the file to the user』s computer. Whatever the default behavior for that user』s browser is, that』s how LearnDash certificates will behave as well.
Previewing Certificates
Before applying your certificate to a course or quiz, you』ll want to preview it so you can see how it looks. You can create a quick test quiz that is only used for previewing your certificate.

Create your certificate, and make sure you Publish it
Then, navigate to LEARNDASH LMS > QUIZZES
Click Add New to create a new quiz
Give the quiz a title
On the Settings tab, next to Quiz Certificate, choose the certificate that you want to preview
Add a single choice question to the quiz, with an obvious correct answer
Publish the quiz
Open the quiz in a new tab
Choose the correct answer, and click Finish Quiz
Click the Print Your Certificate button

Alternatively, you could create a test course with only one lesson. Then you』d mark that lesson complete, and you』d be able to view your certificate that way.
This will open your certificate in a new tab so you can preview it. Keep this tab open, and each time you make a change to your certificate in the backend, simply refresh this page and the updated version of your certificate will be loaded.
NOTE
Don』t forget to delete this quiz (or course) when you』re finished testing your certificate.
Video Tutorial
In this webinar, we demonstrate how to create a certificate from beginning to end. Includes best practice advice and helpful tips for creating dynamic content.

Was this article helpful to you?

Yes

No

Compatibility Add-Ons

Compatibility Add-Ons

LearnDash is built to 「play nice」 with many of the popular themes and plugins available for WordPress. However, there are some instances where a little more is needed in order to improve compatibility between LearnDash and other tools in the WordPress ecosystem.
That is where our Compatibility Add-ons come to the rescue! Simply activate the desired compatibility add-on and you are done. There are no settings to configure!
Table of Contents [show]1 Multilingual Integration1.1 Installation1.2 Supported Vendors1.3 FAQ2 Elementor Integration2.1 Installation2.2 Global Templates and Widgets2.2.1 Supported LearnDash Widgets2.3 Using the Integration2.4 FAQ3 MathJax Add-On3.1 Was this article helpful to you?
Multilingual Integration
This add-on allows for greater compatibility between LearnDash and multilingual sites that are using 3rd party plugins for administering the multilingual translations.
This add-on should be activated if you want to use the LearnDash Course Builder and Quiz Builder along with a multilingual set-up. In addition, this add-on should be activated in order to translate URLs (WPML only).
NOTE
This compatibility add-on is not intended for adding or modifying translation files. Please see the Translation User Guide for information on translations.
Installation
Option 1: Add-ons Menu (requires an active LearnDash license)

In your WordPress admin area, navigate to LEARNDASH LMS > ADD-ONS
Locate the LearnDash Multilingual add-on
Click Install Now
Click the Activate Plugin button

Option 2: Manual Upload

Download the plugin file (must be logged in to download)
In WordPress, navigate to PLUGINS > ADD NEW
Click Upload Plugin
Browse for the .zip file you downloaded in Step 1
Click Install Now
Click Activate Plugin

Supported Vendors

WPML See provided documentation
Polylang

FAQ
Does this work with every multilingual plugin?
We have tested with the WPML and Polylang core plugins. This add-on may help the compatibility for other multilingual plugins, but at this time others have not been tested.
Elementor Integration
See Page Builder User Guide for additional information. 
The Elementor integration allows you to easily create dynamic LearnDash content in Elementor, and even works with their global template options. The Elementor global template settings override the theme styling settings and takes its place, allowing you to use Elementor to set styles for elements not built by Elementor.
IMPORTANT
Elementor requires the LearnDash 3.0 active template and will NOT work with the Legacy template.
Installation
Option 1: Add-ons Menu (requires an active LearnDash license)

In your WordPress admin area, navigate to LEARNDASH LMS > ADD-ONS
Locate the LearnDash Elementor Integration add-on
Click Install Now
Click the Activate Plugin button

Option 2: Manual Upload

Download the plugin file (must be logged in to download)
In WordPress, navigate to PLUGINS > ADD NEW
Click Upload Plugin
Browse for the .zip file you downloaded in Step 1
Click Install Now
Click Activate Plugin

Global Templates and Widgets

Using this integration, course creators can use Elementor templates specifically designed for the most essential e-learning page types: courses, lessons, topics, and quizzes.
This global template functionality extends to widgets as well, You can access these widgets from design panel where they will be readily available to insert into your page wherever you need them.
Supported LearnDash Widgets

LearnDash Login – Inserts the login button into the page using the [learndash_login] shortcode.
Profile – Inserts the profile icon with a link to the learner』s profile page using the [ld_profile] shortcode.
Course List – Displays the course list using the the [ld_course_list] shortcode.
Lesson List – Inserts the lessons list using the [ld_lesson_list shortcode.
Topic List – Lists lesson topics using the [ld_topic_list] shortcode.
Quiz list – Shows the list of quizzes using the [ld_quiz_list] shortcode.
Course Content – Displays the lessons, including number of topics and quizzes.
Course Infobar – Show pricing, enrollment status, and start button.
Course Certificate – Shows if a learner has earned a certificate and offers option to download.
Lesson Content – Displays the content list including topics and quizzes.
Lesson Infobar – Shows breadcrumbs and whether a learner has completed the lesson.
Topic Content – Shows the topic material.
Topic Infobar – Displays lesson progress, breadcrumbs, and completion status.
Quiz Content – Displays a variety of quiz question types.
Quiz Infobar – Shows breadcrumbs and progress status.

Using the Integration
In this webinar, we cover what this integration does and provide an example custom course template.

To add to that, here』s another recently concluded webinar that recaps how you can integrate Elementor Pro with LearnDash in addition to having it work seamlessly with WooCommerce:

FAQ
Can I customize LearnDash Focus Mode with Elementor using this integration?
No. This is not currently supported but is on our roadmap as we continue to enhance this integration.
MathJax Add-On
Currently in development.

Was this article helpful to you?

Yes

No

Technical Requirements

Technical Requirements

Before installing WordPress & LearnDash, you should first verify that your hosting environment is running the minimum recommended requirements, as defined by WordPress:

PHP version 7.4 or greater
MySQL version 5.6 or greater OR MariaDB version 10.1 or greater
HTTPS support
PHP memory limit of 128 MB or greater (LearnDash-only requirement)

Most of these values can be checked on your hosting provider』s end. You can directly ask your developer or contact your host to verify if they meet the minimum requirements. If your hosting provider doesn』t support these requirements, consider switching to one of our recommended hosting options.

Was this article helpful to you?

Yes

No

Paid Memberships Pro Integration

Paid Memberships Pro Integration

The LearnDash Paid Memberships Pro integration enables you to connect your courses to memberships that you set up in Paid Memberships Pro.
Despite its name, the core version of Paid Memberships Pro is actually free (but there are over 60 add-ons if you upgrade to premium).
Paid Memberships Pro can also handle the ecommerce & checkout experience for you, allowing you to bundle multiple courses into a single membership, and automatically granting & removing a member』s access to a course based on their membership status.
LearnDash has some content protection built-in, but Paid Memberships Pro will expand upon that and provide a lot more ways for you to manage memberships, subscriptions & more.
NOTE
Please install & activate the free Paid Memberships Pro plugin before you set up the LearnDash integration. The core plugin is free, and it comes with 6 popular payment gateways. There are over 60 add-ons available if you upgrade to their premium version.
Table of Contents [show]1 Why Use Paid Memberships Pro?2 Installation3 Create a Membership Level4 Assign a Course to a Membership Level4.1 Alternative Method5 Set Up Your Course6 Retroactive Member Access7 FAQ7.1 Was this article helpful to you?
Why Use Paid Memberships Pro?
A few reasons why you might want to use Paid Memberships Pro in conjunction with LearnDash:

create membership levels, and assign a course (or courses) to different levels
offer coupons or discount codes for your courses
sell courses in a bundle (i.e. one price provides access to multiple courses)
sell access to courses as an ongoing subscription

View all Paid Membership Pro features »
Installation
Option 1: Add-ons Menu (requires an active LearnDash license)

In your WordPress admin area, navigate to LEARNDASH LMS > ADD-ONS
Locate the Paid Memberships Pro for LearnDash add-on
Click Install Now
Click the Activate Plugin button

Option 2: Manual Upload

Download the plugin file (must be logged in to download)
In WordPress, navigate to PLUGINS > ADD NEW
Click Upload Plugin
Browse for the .zip file you downloaded in Step 1
Click Install Now
Click Activate Plugin

Create a Membership Level
Before you can assign a LearnDash course to a membership in Paid Memberships Pro, you need to:

create a course
create a membership level

We』ll assume you have already created a LearnDash course.
To create a membership level in Paid Memberships Pro:

Navigate to MEMBERSHIPS > SETTINGS > LEVELS
Click the Create a Membership Level button
Fill out the required information

For more details, check out the video in their official documentation.
Before you finish this step, please read the next section on assigning a course to your membership level.
Assign a Course to a Membership Level
Before you save your new membership level, you』ll want to associate your LearnDash course(s) with it. You do this on the same page as you』re creating it.
This will mean that once a user purchases (or simply gains access to) the membership level, they will automatically have access to the course(s) as well.

 

On the MEMBERSHIPS > SETTINGS > LEVELS page…
Scroll down & look for the LearnDash heading
Next to Courses, choose the course(s) that you want to assign to this membership level
NOTE: You may link one, or multiple, courses.

Now you』re finished creating the membership level & assigning your courses to it. Be sure to click the 「Save Level」 button at the bottom to save your changes.
Alternative Method
Assigning a course to a membership level is most easily achieved at the time you』re creating your membership. However, you can also control course access via the course page itself.

Navigate to LEARNDASH LMS > COURSES
Click on the course you』d like to assign to a membership level
In the sidebar, look for Require Membership
Check the box next to the membership level that this course should be assigned to

NOTE
These two methods are synced up. This means, if you change the setting in one place, it will automatically be changed in the other. So just use whichever method is most convenient for you.
Set Up Your Course
After your membership level is set up in Paid Memberships Pro, you』ll need to make a few adjustments to your LearnDash course.

Navigate to LEARNDASH LMS > COURSES
Click on the course that corresponds with a Paid Memberships Pro membership level
Click the Settings tab at the top
Under Course Access Settings, look for Access Mode
Set this to Closed
In the Button URL field, enter the URL to your Paid Memberships Pro 「Levels Page」

You can find the URL to your 「Levels Page」 in the WordPress admin area by going to MEMBERSHIPS > SETTINGS > PAGES, and click on the 「view page」 button next to 「Levels Page.」
Now when people visit your course page, the 「Take this Course」 button will send them to the corresponding 「Levels Page,」 where they can add the membership level to their cart & complete the checkout process.
Retroactive Member Access
If you already have Paid Memberships Pro installed with live membership levels and members, then after activating Paid Memberships Pro for LearnDash there will be a prompt to run retroactive member access process.

Running this process will enroll your existing membership into the LearnDash courses that you associate with your membership levels.
If you are not ready to run this process, you can close the notice. When you are ready to run the retroactive process:

Navigate to MEMBERSHIPS > LEARNDASH
Click the Run button

Please allow time for the process to fully complete before moving to another page.
FAQ
Which payment gateways can I use with Paid Memberships Pro to sell courses?
Please see the Paid Memberships Pro documentation for a list of supported payment gateways.
Can I use other checkout methods alongside Paid Memberships Pro?
No. If you』re using Paid Memberships Pro to manage course access, you cannot use any other payment gateway or ecommerce integration to manage course access.
Can a user have multiple membership levels at the same time?
No. Please see Paid Membership Pro』s documentation for more information & workarounds.

You might be interested in our other membership plugin integrations:

MemberPress
Restrict Content Pro

Was this article helpful to you?

Yes

No

Shortcodes & Blocks

Shortcodes & Blocks

Shortcodes & blocks provide you with additional ways to insert LearnDash content into your courses, pages, posts and other custom post types. This article will list out every piece of dynamic LearnDash content you can add to your site, and explain how to do it with both a shortcode & a block.
Creating a certificate? Check out our certificate shortcodes here »
Table of Contents [show]1 What』s the Difference?2 Which One To Use?3 How to Use Them3.1 Blocks3.2 Shortcodes4 All LearnDash Blocks & Shortcodes5 Common Blocks & Shortcodes5.1 LearnDash Profile [ld_profile]5.2 LearnDash User Course Points [ld_user_course_points]5.3 LearnDash Course Progress [learndash_course_progress]5.4 LearnDash Course List [ld_course_list]5.5 LearnDash Lesson List [ld_lesson_list]5.6 LearnDash Topic List [ld_topic_list]5.7 LearnDash Quiz List [ld_quiz_list]5.8 LearnDash Group List [ld_group_list]5.9 LearnDash Course Content [course_content]5.10 LearnDash User Groups [user_groups]5.11 LearnDash Course Expire Status [ld_course_expire_status]5.11.1 label_before5.11.2 label_after5.11.3 format5.12 [ld_video]5.13 LearnDash Payment Buttons [learndash_payment_buttons]5.14 LearnDash Course Info [ld_course_info]5.15 LearnDash Login [learndash_login]5.16 LearnDash Certificate [ld_certificate]5.17 LearnDash Resume Course [ld_course_resume]6 Conditionally Display Content6.1 LearnDash Visitor [visitor]6.2 LearnDash Student [student]6.3 LearnDash Course Not Started [course_notstarted]6.4 LearnDash Course In Progress [course_inprogress]6.5 LearnDash Course Complete [course_complete]6.6 LearnDash Quiz Complete [ld_quiz_complete]6.7 LearnDash Group Message [ld_group]6.8 Was this article helpful to you?
What』s the Difference?
Shortcodes

The original way to add dynamic content into the WordPress editor
Can also be used to insert LearnDash content into page builders
Contain options (also called parameters) to customize the information displayed
Here』s an example shortcode, with one parameter:

[ld_course_list num="10"]
Blocks

Only available when using the new content editor released in WordPress 5.0 (aka: Gutenberg)
Contain all the same features & options as shortcodes
Provide an easier interface in which to insert content & customize the options

Which One To Use?
Every shortcode has a corresponding block, and every block has a corresponding shortcode. There are no feature differences between the two. Here are a few questions you can ask yourself to figure out which to use:

Using the new WordPress editor (Gutenberg)? If yes, you can use either. You』ll likely find blocks easier to use, but if you』re comfortable with shortcodes, they are still available to you.
Using the Classic Editor plugin? If yes, than you』ll need to use a shortcode.
Using a page builder? If yes, you』ll need to use a shortcode. Blocks are not yet available in most page builders.
Inserting content into a widget/sidebar? You』ll need to use a shortcode. Blocks are not yet available to use inside of widgets.

How to Use Them
Before we explain what each block & shortcode does, let』s briefly discuss how to use them.
Blocks

Blocks are inserted into the WordPress editor by clicking on the + icon, and then either searching for the name of the block, or scrolling through the list of available options. When you find the block you want to add, simply click on it.
After adding the block, you can customize the options in the block options panel in the sidebar. The options will vary depending on which block you have selected.
This example shows some of the options for the LearnDash Course List block.
Shortcodes
All shortcodes use square brackets ([ and ]), along with the name of the particular shortcode you』re using, and any parameters (options) you want to set.
Here』s a shortcode that displays a user』s LearnDash profile information, in its default state, with no parameters:
[ld_profile]
Here』s that same shortcode with parameters added to it, to display the user』s courses in ascending order by course title:
[ld_profile orderby="title" order="ASC"]
There』s one other way to use a shortcode. You can check to see if a certain thing is true, and if it is, output the contents contained within the shortcode. Here』s an example that would check to see if someone is enrolled in the course, and if they are, display a message.
[student]Only a student enrolled in the course would see this.[/student]
You』ll notice this version has both an opening & a closing shortcode, with the closing shortcode being preceded with a forward slash (/).
DEVELOPERS
You can also add shortcodes to your theme files or custom plugins via the do_shortcode() function.
All LearnDash Blocks & Shortcodes
Here』s a complete list of all available LearnDash blocks/shortcodes. Click on the name for more information on how to use them, as well as all the available parameters.

Block
Shortcode
Description

Common LearnDash Blocks/Shortcodes

LearnDash Profile
[ld_profile]
Displays basic user information (name, avatar, etc.), as well as total courses, course points, a list of enrolled courses, quiz results & certificates earned.

LearnDash User Course Points
[ld_user_course_points]
Displays the earned course points, for that user, on any page.

LearnDash Course Progress
[learndash_course_progress]
Displays a progress bar with the user』s progress for that course.

LearnDash Course List
[ld_course_list]
Displays a list of courses. Many options are available to filter & customize the output. When the Course Grid add-on is enabled, it will display courses in a grid layout.

LearnDash Lesson List
[ld_lesson_list]
Similar to [ld_course_list] but displays a list of lessons. Also works with the Course Grid add-on.

LearnDash Topic List
[ld_topic_list]
Similar to [ld_course_list] but displays a list of topics. Also works with the Course Grid add-on.

LearnDash Quiz List
[ld_quiz_list]
Similar to [ld_course_list] but displays a list of quizzes. Also works with the Course Grid add-on.

LearnDash Group List
[ld_group_list]
Similar to [ld_course_list] but displays a list of groups. Also works with the Course Grid add-on.

LearnDash Course Content
[course_content]
Displays a complete list of lessons, topics & quizzes associated with that course.

LearnDash User Groups
[user_groups]
Displays the list of groups users are assigned to as either users or leaders.

LearnDash Course Expire Status
[ld_course_expire_status]
Displays the expiration date of a course for the current user.

LearnDash Video
[ld_video]
Displays a video anywhere within a lesson or topic page. You must be using video progression for this shortcode to work.

LearnDash Payment Buttons
[learndash_payment_buttons]
Displays the payment button for a particular course, anywhere on the page.

LearnDash Course Info
[ld_course_info]
Displays a list of registered courses, course progress details & all quizzes the user has taken.

LearnDash Login
[learndash_login]
Displays a login link that reveals the LearnDash login & registration pop-up modal when clicked.

LearnDash Certificate
[ld_certificate]
Displays a download link of an earned certificate.

LearnDash Resume Course
[ld_course_resume]
Returns a user to the last step in the Course (format: link/button).

Conditionally Display Content
Show/Hide content for certain users or groups

LearnDash Visitor
[visitor]
Displays content if a user is NOT enrolled in a course. Requires a closing [/visitor] tag.

LearnDash Student
[student]
Displays content if a user IS enrolled in a course. Can also be used to display content to individual users (based on user id). Requires a closing [/student] tag.

LearnDash Course Not Started
[course_notstarted]
Displays content if a user has access to a course, but has not completed any steps. Requires a closing [/course_notstarted] tag.

LearnDash Course In Progress
[course_inprogress]
Displays content if a user has access to a course, has completed at least one step, but has not finished the entire course. Requires a closing [/course_inprogress] tag.

LearnDash Course Complete
[course_complete]
Displays content if a user has fully completed a course. Requires a closing [/course_complete] tag.

LearnDash Quiz Complete
[ld_quiz_complete]
Displays content if a user has completed a quiz. Requires a closing [/ld_quiz_complete] tag.

LearnDash Group Message
[ld_group]
Displays a specified message to group enrollees.Requires specified group ID and a closing [/ld_group] tag.

Certificate Shortcodes
View our list of certificate shortcodes »

Common Blocks & Shortcodes
Let』s talk about how to use the main LearnDash shortcodes, and discuss the options available with each one. The method for customizing LearnDash blocks is the same for each block, so we』re going to focus on the code needed to customize the shortcodes. Remember, if you』re using the Gutenberg blocks, all the same options are available in the block options panel in the sidebar.
LearnDash Profile [ld_profile]
The LearnDash Profile block/shortcode can be used to build a student profile. By default, it will output the following information related to the currently logged-in user:

Avatar (profile image)
Name
Link to edit profile
Total number of courses enrolled in, courses completed, certificates awarded & points earned
List of registered courses, which includes:

ability to search courses
course progress indicators
links to download certificates
quizzes taken, along with date, scores & statistics

You can also use the button at the top to quickly expand/collapse all registered course information.
The following parameters are available when using the [ld_profile] shortcode:

per_page="10" – sets the number of courses to display on one page, before pagination is used
course_points_user="no" – prevents the display of a user』s earned course points (default is 「yes」)
expand_all="yes" – expands all sections of the profile (default is 「no」)
orderby="title" – determines how the courses should be sorted (default is 「id」). This should be used in conjunction with the order parameter. See full list of orderby parameters →
order="ASC" – determines the order in which courses are sorted. This should be used in conjunction with the orderby parameter. Use either 「ASC」 or 「DESC」.

If you』re using the LearnDash Profile block (and not the shortcode), there are two additional options available:

Show/Hide the Profile Link
Show/Hide the User Quiz Attempts

LearnDash User Course Points [ld_user_course_points]
You likely won』t find many uses for the [ld_user_course_points] shortcode, but it could be used to build your own student profile page using a page builder.
Simply insert [ld_user_course_points] onto its own line, or use the block, and it will output this:
Earned Course Points: 100
This will display the total, cumulative points that the current user has received. This includes both 「earned」 course points as well as any 「extra」 course points you』ve assigned to the user via their WordPress profile.
There is only one parameter, if you want to target a specific user ID:
[ld_user_course_points user_id="5"]
This would show the course points for the user with an ID of 5. The default usage will automatically show points for the logged-in user.
LearnDash Course Progress [learndash_course_progress]
The [learndash_course_progress] shortcode displays a progress bar with the current user』s progress for that course.

It is most commonly used on a course, lesson, topic or quiz page, and it automatically detects 1) which course is currently being accessed, and 2) which user is logged in.
You』ll typically use the default [learndash_course_progress] shortcode without any parameters, but if you』re using it outside of a course, or for a specific user, there are two options you can use:

[learndash_course_progress user_id="5"] – Displays the progress for a specific user
[learndash_course_progress course_id="12"] – Displays the progress for a specific course

This shortcode works great with page builders when building a custom layout for your courses, lessons & topics.
LearnDash Course List [ld_course_list]
The [ld_course_list] shortcode displays a list of courses, and it comes with a lot of parameters to customize which courses are shown and how they are laid out. The LearnDash Course List is most commonly used in conjunction with the Course Grid add-on.
Example of [ld_course_list] when combined with the course grid add-on.Because of the long list of options available, please head over to our Course Grid add-on article to learn about all of the available options.
This block allows for the display a sub-set of enrolled courses based on the course progress status. This is only available when the 「My Courses」 option is set to show 「Enrolled Courses Only」. 
LearnDash Lesson List [ld_lesson_list]
The LearnDash Lesson List works in much the same way as the Course List, only it displays lessons instead of courses. Here』s an example of it in use:
If no featured image is uploaded to a lesson, a placeholder will be used.
This shortcode would be best used on a course page, instead of using the default course content table. Be sure to upload a featured image for each lesson to replace the placeholder images.
LearnDash Topic List [ld_topic_list]
The LearnDash Topic List works in much the same way as the Lesson List, only it displays topics instead of lessons.
This would be best used on a lesson page that contains at least a few topics. A featured image will also replace these placeholder images.
Using the lesson_id parameter allows you to display a list of quizzes, or topics, associated with a specific lesson.
LearnDash Quiz List [ld_quiz_list]
The LearnDash Quiz List works in much the same way as the Lesson List, only it displays quizzes instead of lessons. If your course offers multiple quizzes, you might find this shortcode useful.
Typically, however, quizzes are best displayed either…

in the course content table, along with the course they are associated with,
in the course navigation widget, wherever they fall in the natural course progress, or
at the bottom of a lesson or topic page that the quiz is assigned to (inserted automatically)

Using the lesson_id parameter allows you to display a list of quizzes, or topics, associated with a specific lesson.
LearnDash Group List [ld_group_list]
The LearnDash Group List works in much the same way as the Course List, only it displays groups instead of courses. If you offer multiple groups that allow for self-enrollment, you might find this shortcode useful.
The LearnDash Group List can be used in conjunction with the Course Grid add-on.
Because of the long list of options available, please head over to our Course Grid add-on article to learn about all of the available options.
LearnDash Course Content [course_content]
The LearnDash Course Content block/shortcode is an exact replica of the default course content table that is displayed on course pages by default (below any content you add). It displays a complete overview of the course, along with the user』s progress. In it, you』ll find all…

lessons
topics
quizzes

…that are assigned to the course. You can show/hide topics & quizzes that are tied to lessons, and you』ll see a status icon that displays the user』s status for that particular lesson/topic/quiz.

There are two really valuable use cases for this shortcode:

insert into a custom course landing page (if using a page builder)
insert into a sales page powered by WooCommerce, Easy Digital Downloads, MemberPress, or another ecommerce/checkout solution

When using this shortcode on any other page besides a course page, you』ll need to use the course_id parameter. This tells LearnDash which course you want to display content for.
[course_content course_id="12"]
This would display the course content table for the course with an ID of 12.
LearnDash User Groups [user_groups]
The LearnDash User Groups block/shortcode displays the list of groups that a user is assigned to.
LearnDash Course Expire Status [ld_course_expire_status]
This block/shortcode will display the date in which a course expires for the currently logged-in user. You must enable the 「Expire Access」 setting on the course edit screen for this to work.
Course access will expire on: December 31, 2019
If used on a course page, [ld_course_expire_status] will automatically detect the course, and the user, and display a message. The default messages are as follows:

If a course expires in the future: 「Course access will expire on: {date}」
If a course has already expired: 「Course access expired on: {date}」

You can customize the text before and after the date by using the following parameters:
label_before
This is displayed before the date:
[ld_course_expire_status label_before="This course expired on "]
label_after
This is displayed after the date:
[ld_course_expire_status label_after=". Please renew your membership to regain access."]
format
This changes the format of the date used. By default, we』ll use your WordPress date settings. See a full list of date formatting options here.
[ld_course_expire_status format="F j, Y"]
You can also use the course_id & user_id parameters, although you will likely not need them because we identify these automatically.
Here』s an example of all parameters used together:
[ld_course_expire_status format="F j, Y" label_before="This course expired on " label_after=". Please renew your membership." course_id="12" user_id="5"]
[ld_video]
The [ld_video] shortcode is only available as a shortcode. There is no Gutenberg block for it yet. However, you can still use it with the Gutenberg editor by utilizing the shortcode block:

This only works if you』re using our built-in Video Progression feature. This must be enabled on the lesson or topic page in order for it to work, and a URL to your video must be entered.
Learn how to set up video progression here »
With video progression, by default, your video is placed above the course content. However, if you want to place the video somewhere in the middle of your content, you would use the [ld_video] shortcode.
There are no parameters. Simply add [ld_video] anywhere within your course content (must be on its own line).
This is great for use with page builders when customizing the layout of your lesson/topic pages. You have complete control of where to include your video.
LearnDash Payment Buttons [learndash_payment_buttons]
The LearnDash Payment Buttons should only be used if you』re utilizing one of the default LearnDash payment methods (Stripe, PayPal or 2Checkout). If you』re using WooCommerce, MemberPress, or any other platform to process payment, this block/shortcode will not work.
By default, if your course is set to any other status except for 「Open,」 you』ll see a 「Take This Course」 button on the course page. If you』re using one of LearnDash』s default payment methods, this button will begin the payment/checkout process for the user.

If you want to place this button somewhere else on your page (i.e. if you』re using a page builder to create a custom course landing page), you can use the [learndash_payment_buttons] shortcode or block to insert the button anywhere.
If not used directly on a course page, you』ll want to include the course_id:
[learndash_payment_buttons course_id="12"]
LearnDash Course Info [ld_course_info]
This block/shortcode could be used to help build part of a student profile page. LearnDash Course Info displays 3 things:

list of registered courses, along with a thumbnail image
list of course progress details, which includes:

course status: Not Started, In Progress or Completed
X out of Y steps completed
the date you started the course

list of quizzes you』ve taken, which includes:

quiz name & link to quiz page
score
points awarded
link to statistics
date you took it
grading status

Here』s what the registered courses looks like when you』ve included a featured image:

Here』s an example of the course progress information:

And here』s the quiz information:

The output might differ slightly depending on which theme you』re using.
You can use any of the following parameters to customize the output of [ld_course_info] (or use a bunch of them together). These are also available when using the Gutenberg block.

registered_show_thumbnail – set to 「true」 to show the thumbnail, or 「false」 to hide it
registered_num – limits the number of courses displayed
registered_orderby – order the registered courses by ID, title, date and more
registered_order – set to either ascending (「ASC」) or descending (「DESC」)
progress_num – limits the number of courses displayed in the progress section
progress_orderby – order courses in the progress section by ID, title, date and more
progress_order – set to either ascending (「ASC」) or descending (「DESC」)
quiz_num – limit the number of quizzes displayed
quiz_orderby – order quizzes by ID, title, date and more
quiz_order – set to either ascending (「ASC」) or descending (「DESC」)

You can also specify a user_id, but typically you don』t need this as we』ll automatically assign it to the current user.
LearnDash Login [learndash_login]
Use the LearnDash Login shortcode to add a Login link to a page, post, sidebar widget, or menu item. When clicked, the LearnDash Login Modal pops-up.

When a user is logged-in, the link will update to: Logout. When clicked, a user will be logged-out of the site.
This shortcode will only work if LearnDash Login & Registration is enabled.
LearnDash Certificate [ld_certificate]
This displays a Certificate download link for an earned certificate. One of the following parameters is required in order for the appropriate download link is displayed:

course_id – the ID number of a specific course
quiz_id – the ID number of a specific quiz

There are also optional parameters: 

user_id – option to show link for a specific User (leave blank for current User)
label – label for certificate button/button link shown to user
class – HTML class for link element
context – user defined value to be passed into shortcode handler
callback – custom callback function to be used instead of default output

LearnDash Resume Course [ld_course_resume]
Displays an option for Users to quickly return to the last step in a Course (format: link/button).
Supported Parameters: 

course_id – enter single Course ID for the resume link (leave blank if used within a Course)
user_id – display resume option for a specific User (leave blank for current User)
label – label for link/button shown to User

Conditionally Display Content
These blocks & shortcodes work a little differently than the ones above. These help you show or hide specific information for certain users, based on their enrollment status.
You can include HTML, images, video or anything else you』d like inside of these shortcodes.
All of these shortcodes require a beginning [shortcode] and an ending [/shortcode], with content in the middle. Be sure to include both.
When using these Gutenberg blocks, you』ll see a small indicator when hovering over the block to let you know that the content you add will be placed inside the conditional block:
Example paragraph block used within the LearnDash Course In Progress block
When using Elementor Templates, the autop="false" can be added within the shortcode for all conditionally displayed content to avoid having unwanted

and
elements from appearing throughout the template. This can be useful to avoid layout issues within templates.
LearnDash Visitor [visitor]
You can use this block/shortcode to only show certain information to students who are not yet enrolled in a course. It is most commonly used on the course page itself, but can also be used on a custom sales page by specifying a course_id. Here』s an example:
[visitor course_id="12"]
This will only be seen by users who DO NOT have access to the course. You could provide a link to a signup form or email capture here.
[/visitor]
LearnDash Student [student]
Use this shortcode to only display some content to a student who has access to the course.
[student course_id="12"]
This will only be seen by users who HAVE ACCESS to the course.
[/student]
You could also add a user_id parameter to the [student] shortcode if you wanted to target a specific student by his or her ID.
[student user_id="5"]
This will only be seen by the user whose ID is 5. No other students will see it.
[/student]
LearnDash Course Not Started [course_notstarted]
This will show content to those who have not completed any steps in the course thus far.
[course_notstarted course_id="12"]
This will only be seen by users who have not completed any steps in the course yet. You could provide a message encouraging them to get started.
[/course_notstarted]
LearnDash Course In Progress [course_inprogress]
This shows content to a student who has started the course, but not yet finished it.
[course_inprogress course_id="12"]
This will only be seen by users who have started the course (completed at least one step), but not yet finished it. You could provide encouragement for them to finish it soon.
[/course_inprogress]
LearnDash Course Complete [course_complete]
Use the [course_complete] shortcode to show content only to students who have fully completed a course (completed all steps & passed all required quizzes).
[course_complete course_id="12"]
This will only be seen by users who have fully completed the course. You could provide a link to a certificate here, or some related courses they might want to try next.
[/course_complete]
LearnDash Quiz Complete [ld_quiz_complete]
Use the [ld_quiz_complete] shortcode to show content only to students who have fully completed a quiz.
[ld_quiz_complete quiz_id="32"]
This will only be seen by users who have fully completed the course. You could provide a link to a certificate here, or some related courses they might want to try next.
[/ld_quiz_complete]
LearnDash Group Message [ld_group]
Use the [ld_group] shortcode to show content only to students enrolled in the specified group. Requires group ID.
[ld_group group_id="32"]
This will only be seen by users who have access to the group with the ID of 32.
[/ld_group]

Was this article helpful to you?

Yes

No

bbPress Integration

bbPress Integration

The LearnDash bbPress integration creates the ability for you to link bbPress forums to LearnDash courses. When you associate a forum with a course, any student who has access to that course will be able to post in the corresponding forum. There are a few options which we』ll discuss below.
NOTE
You need to have both the LearnDash and bbPress plugins installed & activated before you can activate the 「bbPress for LearnDash」 plugin.
Table of Contents [show]1 Installation2 How it Works2.1 Create a Forum2.2 Associate Forums with Courses2.3 Additional Options2.3.1 Post Limit Access2.3.2 Message Shown to Users with No Access2.3.3 Forum View3 Course Forum Widget3.1 Add a Course Forum Widget3.2 Was this article helpful to you?
Installation
Option 1: Add-ons Menu (requires an active LearnDash license)

In your WordPress admin area, navigate to LEARNDASH LMS > ADD-ONS
Locate the bbPress for LearnDash add-on
Click Install Now
Click the Activate Plugin button

Option 2: Manual Upload

Download the plugin file (must be logged in to download)
In WordPress, navigate to PLUGINS > ADD NEW
Click Upload Plugin
Browse for the .zip file you downloaded in Step 1
Click Install Now
Click Activate Plugin

How it Works
Before you can associate a forum with a course, you』ll need to create a new forum in bbPress. If you』ve already done this, you can skip this step.
We』re also assuming you have already created a LearnDash course. You will need at least one course to set up this integration.
Create a Forum

Navigate to FORUMS > NEW FORUM
Give your forum a title
(optional) Write an intro message & adjust the forum attributes (type, status, visibility, etc.)

Associate Forums with Courses
Now it』s time to associate a forum with a course.

On the Edit Forum page, scroll down to the LearnDash bbPress Settings box
Under Associated Course(s), click on a course to associate it with that forum
NOTE: You may select one or more courses. Hold down the CTRL key (CMD on Mac) to select multiple courses.
If you select multiple courses by mistake, you can use the 「Clear All」 button to start over

Once you』ve selected a course (or courses), be sure to publish or update your forum.
Now any user who has access to that course will also have access to the forum. If a user is not part of the course, they will not be allowed to view or post in the forum.
That』s all that』s needed to set up the integration, however, let』s take a look at a few additional options.
Additional Options
Post Limit Access
This only applies if you』ve associated more than one course with the forum. There are two ways you can decide who has access to the forum:

All (default): Users must have access to all selected courses in order to post in the forum
Any: Users only need to have access to one of the selected courses in order to post in the forum

Message Shown to Users with No Access
This is where you can customize the message shown to users who do not have access to the forum. By default, the message reads:
This forum is restricted to members of the associated course(s).
You can customize this message to include a link to purchase the course, or any other message you』d like. Basic HTML is supported.
Forum View
If you』d like for non-enrolled users to view forum threads & topics, but not be able to post replies, check this box.
Enabling this option will disregard the message above. Non-enrolled users will see the forum and all of it』s topics, but will not be able to post or reply.
Course Forum Widget
The bbPress LearnDash integration also adds a Course Forum widget that you can use in any sidebar.

The widget will automatically detect which course is currently being viewed, and display a link to the associated forum for that course.

A forum link is also displayed when viewing any lesson, topic or quiz within the associated course
If no forum has been associated with the course, no link will be displayed

Add a Course Forum Widget

Navigate to APPEARANCE > WIDGETS, or click on the Widgets panel in the WordPress Customizer
Add the Course Forum widget to any sidebar location
(optional) Give the widget a title
Click the Save button

Was this article helpful to you?

Yes

No

Courses

Courses

Courses are the backbone of any learning curriculum. This section will break down everything you can do with LearnDash courses—customize settings, add content, control access and more.

Global Course Settings
Settings applied to all courses on your site
Shared Course Steps
Reuse lessons, topics & quizzes across multiple courses
The Course Builder
Add, edit, remove & organize course steps
Display & Content Settings
Add materials, assign certificates & more
Configure Course Access
Offer free courses, require login, charge a fee, set prerequisites & more
Course Progression Options
How a user can navigate through your course
Course Page
Course title, image, URL & a description

Once you』ve set up your course, head on over to our lesson, topic or quiz documentation to finish building all of your course content.

Was this article helpful to you?

Yes

No

Certificate Builder Add-On

Certificate Builder Add-On

The LearnDash certificate builder addon gives you the ability to create and design your certificates easily using the built in Gutenberg Builder. Aside from the usual classic editor, you can now use the built in blocks editor when building your certificate making it easier for those who would like to create certificates using a WYSWYG editor.
There will be a few options that we will discuss below.
NOTE
You need to have LearnDash installed & activated before you can activate the 「Certificate Builder」 plugin.
Table of Contents [show]1 Installation2 How It Works2.1 Add A Background2.2 Adding Content2.3 Fonts2.4 Previewing Your Certificate2.5 Was this article helpful to you?
Installation
Option 1: Add-ons Menu (requires an active LearnDash license)

On your WordPress admin area, navigate to LEARNDASH LMS > ADD-ONS
Locate the Certificate Builder add-on
Click Install Now
Click the Activate Plugin button

Option 2: Manual Upload

Download the plugin file (must be logged in to download)
In WordPress, navigate to PLUGINS > ADD NEW
Click Upload Plugin
Browse for the .zip file you downloaded in Step 1
Click Install Now
Click Activate Plugin

How It Works
In order to use the block editor, you need to click on the 「Use Certificate Builder」 button on the Certificate Page.
In your WordPress admin area, navigate to LEARNDASH LMS > CERTIFICATES

Click on Add New

Once you are on the Certificate Page, add title to your page.
Click on the Use Certificate Builder button in order to enter the Blocks Editor and you can start creating your certificate

Assuming that you』ve followed the already created and set up your course with quizzes for your users, you can associate the certificate after creating them to be awarded upon completion of the course.
NOTE
If you use it on a working certificate, the content will get replaced with the Gutenberg block. It is recommended to use the builder with a fresh certificate.
Add A Background
The first screen is a media uploader screen, where you need to provide a background image to continue. Do note that it is a requirement to add a background to your certificate in order to proceed with using the certificate builder.

After the background image is uploaded, from here, you can use other Gutenberg blocks to layout the certificate.
Adding Content
Just like any other page or content, you are free to use the Gutenberg editor to create and customize your certificate.
You are free to use any type of Gutenberg blocks, even with dynamic content such as the LearnDash Courseinfo, Usermeta, and Groupinfo. Just look for these blocks from the drop down on your Blocks Editor.

Fonts
You have the option to use custom fonts for the following blocks:

Heading
LearnDash Usermeta
LearnDash CourseInfo
LearnDash Groupinfo

You can find these options on the Block Settings section on the right-hand sidebar of your Editor screen.

You can add custom fonts to be used for the certificates on the Fonts section of your certificates page.

Navigate to LEARNDASH LMS > CERTIFICATES > FONTS

Add a Label to your font.
Click Choose File on the specific style that they belong in
Browse for the file on your computer
Click Save Changes to finish the process

NOTE
Make sure that if you are using the certificates for commercial purposes, you have to acquire the necessary licenses and permissions before using custom fonts.
Once you』re done uploading the fonts, you can go back to the certificate builder and choose the font when building your certificate.
You also still have the option to use different font styling options to your certificates.
Previewing Your Certificate
One other feature of the certificate builder is the ability to preview your certificates in real-time with real information.

On your Certificate Builder, click on Preview
Select Desktop
View your certificate in a PDF format

NOTE
Do note that the previews will need real data when building the certificate, such as the LearnDash Courseinfo. Information about the current user will be pulled when previewing.
Once you』re done, click on Update and associate the certificate that you just created with a course or quiz. You can learn more about certificates on our Certificates documentation.

Was this article helpful to you?

Yes

No