---
title: Thinkific WordPress Shortcodes
description: "To start, you’ll need to ensure you have the following plugins installed and active: - Thinkific Shortcode Plugin [Using Thinkific Shortcodes in WordPress - Landing Pages](https://www.youtube.com/embed/8g1o8IDAZkk?feature=oembed) Click **Settings**, then **Thinkific Shortcodes** ![thinkific wordpress shortcodes](https://www.wooninja.io/wp-content/uploads/2021/03/thinkific-wordpress-shortcodes-1600x684.png) Enter your Thinkific Subdomain, Thinkific API Key and…"
url: "https://www.wooninja.io/documentation/thinkific-wordpress-shortcodes/"
updated: "2022-03-14"
category: Thinkific / WordPress
---

# Thinkific WordPress Shortcodes

To start, you’ll need to ensure you have the following plugins installed and active:

- Thinkific Shortcode Plugin

[Using Thinkific Shortcodes in WordPress - Landing Pages](https://www.youtube.com/embed/8g1o8IDAZkk?feature=oembed)

Click **Settings**, then **Thinkific Shortcodes**

![thinkific wordpress shortcodes](https://www.wooninja.io/wp-content/uploads/2021/03/thinkific-wordpress-shortcodes-1600x684.png)

Enter your Thinkific Subdomain, Thinkific API Key and WooNinja license key, then click **Save Changes**. Once the page has refreshed, click **Activate License**.

**Important**

This plugin assumes a working knowledge of WordPress and shortcodes. To alter the appearance of the outputs of the plugin, you will require a developer or knowledge of WordPress filtering.

*It is strongly recommended that you have a WordPress developer available to configure this plugin.*

Any **heading** parameter is mapped to the payload as returned by the Thinkific Admin API. e.g name in the Thinkific API object will be displayed as *Name*

**heading** should be specified as a comma seperated list e.g.

```
[thinkific_courses headings="name,price,description"]
```

In general, calls to the Thinkific API are cached for 10 minutes. This reduces API load and shortens load times on WordPress. Developers can configure or disable this caching with filters.

**Available Shortcodes**

```
[thinkific_courses]
```

Returns a HTML table of Thinkific courses. Parameters :

- page – The page of the search results
- limit – The maximum number of results per page
- headings (Optional)

```
//Prints a table of up to 10 courses with a Name and Price heading
[thinkific_courses page="1" limit="10" headings="name,price"]
```

```
[thinkific_course]
```

Returns a single course from Thinkific as a card. Parameters:

- id – The Thinkific Course ID
- headings (Optional)

```
//Prints a card for Course ID 278684 with headings Id, Name and Description
[thinkific_course id="278684" headings="id,name,description"]
```

```
[thinkific_course_take]
```

Returns a text link for the given course to bring the user directly to the course player. Parameters:

- id – The Thinkific Course ID

```
//Returns a text link to take Course with ID 12345
[thinkific_course_take id="12345"]
```

```
[thinkific_courses_by_category]
```

Returns a HTML table of Thinkific courses by Category. Parameters :

- id – The Thinkific Category ID
- headings (Optional)

```
//Returns a HTML table of Courses in the Category with ID 4567 with headings Name and Subtitle
[thinkific_courses_by_category id="" headings="name,subtitle"]
```

```
[thinkific_course_checkout_link]
```

Returns a text link to the Thinkific Checkout for a given course. No price_id is required if there is only one price for the course. If no price_id is specified and there is more than one price, the plugin defaults to the first non-zero price.

- course_id – The Thinkific Couse ID
- price_id – The Thinkific Price ID

```
//Returns a text link for the checkout of course with ID 1234 and price ID 7890
[thinkific_course_checkout_link course_id="1234" price_id="7890"]
```

```
[thinkific_enrollments]
```

Returns a HTML table of currently logged in users enrollments. Parameters:

- email – Override the currently logged in email. Must match a Thinkific User
- page – The page of the enrolment search results
- limit – The maximum number of enrolments to return
- link – When true, the link to the course will be added to the table (Optional. Default false)
- headings (Optional)

```
//Returns a HTML table of the currently logged in user enrollments. A maximum of 5 enrollments will be shown with headings Course Name and Expiry Date. The link to the course is also added to the table

[thinkific_enrollments page="1" limit="5" headings="course_name,expiry_date" link=true]
```

```
[thinkific_enrollment]
```

Returns a HTML card for a single enrolment. Parameters:

- enrollment_id – The Thinkific enrolment ID
- headings (Optional)

```
//Return a HTML card for user enrollment with ID 56789 with headings Course Name and Percentage Completed

[thinkific_enrollment id="56789" headings="course_name,percentage_completed"]
```

```
[thinkific_users]
```

Returns a HTML table of Thinkific users. This will return all users in your Thinkific system. It is recommended to only place this shortcode in admin areas. Parameters:

- page – The page of the search results
- limit – The maximum number of results per page
- headings (Optional)

```
//Show a HTML table of 25 users from page 1
[thinkific_users page="1" limit="25']
```

```
[thinkific_user]
```

Returns a HTML card of the Thinkific User by email. Defaults to currently logged in user. Parameters:

- email – Override the default email. Must match Thinkific User.
- headings (Optional)

```
//Show a HTML card for Thinkific User with email example@example.com with headings Full Name and Email

[thinkific_user email="example@example.com" headings="full_name,email"]
```

```
[thinkific_user_account]
```

Returns a text link for the Thinkific account area. Defaults to the /account with optional deeper link. Parameters:

- link – Used to specify a deeper link (Optional)

```
//Returns a text link to the Thinkific User Account Password Page
[thinkific_user_account link="password"]
```

**Show / Hide Content based on Enrollment Status**

Note: Enrolment results can be cached for up to 15 minutes, therefore this shortcode should include a disclaimer for the end user to wait for updates.

  [thinkific_is_not_enrolled course_id=1234] Content to show if ***NOT*** enrolled in course with ID 1234[/thinkific_is_not_enrolled]

[thinkific_is_enrolled course_id=1234] Content to show if enrolled in course with ID 1234[/thinkific_is_enrolled]
