---
title: "Login and Registration"
source: "https://docs.nexcess.com/software/learndash/login-registration/"
description: "LearnDash includes built-in login and registration tools that make it easy to manage student access to courses. These features allow the creation of custom regi…"
vertical: "Software"
area: "LearnDash"
date: "2018-09-06"
last_modified: "2018-09-06"
---

# Login and Registration

LearnDash includes built-in login and registration tools that make it easy to manage student access to courses. These features allow the creation of custom registration pages, login flows, and password reset pages that integrate seamlessly with the site’s design.

With a clear and consistent login experience, learners can sign up, log in, and start courses quickly—without unnecessary friction.

## Before You Begin

Before setting up login and registration pages, confirm that LearnDash and WordPress are correctly configured.

### 1. Confirm LearnDash Version

Login and registration features require **LearnDash 3.6 or higher**.

- Go to **Plugins > Installed Plugins**
- Locate **LearnDash LMS** and confirm the version
- If needed, download the latest version from the LearnDash Account Dashboard

Keeping LearnDash updated ensures access to the latest features and support.

### 2. Set the Active Template

The LearnDash login and registration experience requires the **LearnDash 3.0** template.

- Navigate to **LearnDash LMS > Settings > General**
- Set **Active Template** to **LearnDash 3.0**

### 3. Enable LearnDash Login & Registration

Turn on LearnDash’s built-in login and registration tools.

- Go to **LearnDash LMS > Settings > General**
- Enable **Login & Registration**

### 4. Enable WordPress User Registration

WordPress must allow new user registrations.

- Navigate to **Settings > General**
- Check **Anyone can register**

Once these steps are complete, the site is ready to create and configure login and registration pages.

## Setting Up Registration Pages

LearnDash uses dedicated pages for registration, password recovery, and confirmation messages. These pages can be created using LearnDash blocks or shortcodes.

### Registration Page

This page allows new users to create an account.

1. Go to **Pages > Add New**
2. Title the page (for example, *Registration*)
3. Add the **LearnDash Registration** block or shortcode: `[ld_registration]`
4. Publish the page

### Registration Success Page

This page confirms that registration was successful.

1. Go to **Pages > Add New**
2. Title the page (for example, *Registration Success*)
3. Add a confirmation message
4. Publish the page  
    *(Optional: redirect users to an account or dashboard page)*

### Reset Password Page

This page allows users to request a password reset.

1. Go to **Pages > Add New**
2. Title the page (for example, *Reset Password*)
3. Add the **Reset Password** block or shortcode: `[ld_reset_password]`
4. Publish the page

### Reset Password Success Page

This page confirms a successful password reset.

1. Go to **Pages > Add New**
2. Title the page (for example, *Reset Password Success*)
3. Add a confirmation message
4. Publish the page

## Configuring Registration Settings

After creating the pages, assign them in LearnDash.

### Assign Registration Pages

- Go to **LearnDash LMS > Settings > Registration/Login**
- Assign the following using the dropdowns: 
    - Registration Page
    - Registration Success Page
    - Reset Password Page
    - Reset Password Success Page

This tells LearnDash which pages to use during each step of the login and registration process.

### Customize Registration Fields

In the same **Registration/Login** settings area, configure the registration form fields.

- Enable or disable fields such as: 
    - Username
    - Email
    - Password
    - First Name
    - Last Name
- Drag and drop fields to change their order
- Click **Save** to apply changes

## Understanding the Registration Flow

The registration experience depends on how course access is configured.

### Free Courses

- Learners see a **Login to Enroll** button
- Clicking it prompts users to log in or register
- After registration, learners are automatically enrolled and redirected to the course

### Paid Courses

- Learners see a **Take This Course** button
- Clicking it sends them to the login or registration page
- After logging in or registering, learners proceed to checkout
- Once payment is completed, they are enrolled and redirected to the course

This flow allows learners to register, pay (if required), and begin learning with minimal steps.

## Additional Features

### Login Modal Shortcode

Use the shortcode below to display a login link that opens a popup modal:

```
[learndash_login]

```

This can be added to any page, post, or widget and allows users to log in without leaving the current page.

### Add a Login Button to the Navigation Menu

To add a login button-style link to the site menu:

1. Go to **Appearance > Menus**
2. Click **Screen Options** (top-right) and enable all advanced options
3. Add a **Custom Link**: 
    - **URL:** `#login`
    - **Link Text:** Login
4. Assign the CSS class: `ld-button`

### Customize Login and Logout Text

Use the shortcode below to dynamically change the link text based on login status:

```
[learndash_login login_label="Login" logout_label="Logout"]

```

## Registration Shortcodes

LearnDash provides shortcodes for registration and password recovery that can be added to any page.

### Password Reset Form

```
[ld_reset_password]

```

Optional attribute:

- `width` (in pixels), for example: `[ld_reset_password width="400"]`

This allows learners to reset passwords without accessing the WordPress admin area.

### Registration Form

```
[ld_registration]

```

This displays the LearnDash registration form when LearnDash’s built-in registration system is active.

**Important:**  
If registration pages are assigned in **LearnDash Settings > Registration**, the new registration flow is used.  
If left blank, LearnDash falls back to the legacy registration process.

Always click **Save** after updating registration settings.
