Menu

Variables 2.X.X

* This feature is intended for developers comfortable with HTML & CSS. *

The following Liquid variables are available for any Theme versions 2.0 and higher. If you are working with a Theme below that, please see this article


With custom themes, you can completely modify and change site and course landing pages, catalogue pages, the student dashboard, the sign in and sign up pages, the checkout and your privacy policy and terms of use pages with full access to liquid variables for those pages.

You are responsible for fully testing your code to confirm the site will continue to work on all devices/screen sizes/browsers as you intend - don't forget to check for mobile responsiveness! Custom coding support is not provided by our team.


Are you a designer new to Liquid? This is a valuable primer:https://github.com/Shopify/liquid/wiki/Liquid-for-Designers


Contents


Global Variables

These variables are available anywhere!


Current User

description
Available current user data

locator
description
site.current_user.is_first_sign_in
{Boolean} Is this the first signin for the user? True or false
site.current_user.sign_in_count
{Number} Get the number of times the current user signed in
site.current_user.current_sign_in_at
{String} Get the current user's sign in date
site.current_user.last_sign_in_at
{String} Get the current user's last sign in date
site.current_user.current_sign_in_ip
{Number} Get the current user's current sign in IP
site.current_user.last_sign_in_ip
{Number} Get the current user's last sign in IP
site.current_user.stripe_customer_id
{String} Get the current user's stripe id
site.current_user.signed_in
{Boolean} Is the current user signed in? True or false
site.current_user.first_name_last_initial
{String} Get the current user's first name and last initial
site.current_user.full_name
{String} Get the current user's full name
site.current_user.email
{String} Get the current user's email
site.current_user.is_student
{Boolean} Is the user a student? True or false
site.current_user.bio
{String} Bio field on current user's profile
site.current_user.is_site_owner
{Boolean} Is the user the site owner? True or false
site.current_user.is_site_admin
{Boolean} Is the user an administrator for this site? True or false
site.current_user.is_affiliate
{Boolean} Is the user an affiliate on the site? True or false
site.current_user.is_course_admin
{Boolean} Is the user a course admin for a course on this site? True or false
site.current_user.can_change_notifications
{Boolean} Can the user change notifications? True or false
site.current_user.has_certificates
{Boolean} Does the user have certificates? True or false
site.current_user.has_password
{Boolean} Does the user have a password set? True or false
site.current_user.external_source
{String} Get the current user's external source
site.current_user.avatar
{String} Get the current user's avatar url (150x150px)
site.current_user.default_user_avatar_url
{String} Get the thinkific's default avatar url
site.current_user.account_url
{String} Get the current user's account url
site.current_user.signed_in_via_sso
{Boolean} Is the user signed in via SSO (Single Sign-On)? True or false
site.current_user.created_at
{String} Get the current user's created at date


Site

description
The site variable contains information related to your site and is available for every page in your theme

locator
description
site.subdomain
{String} Get your site's current subdomain
site.site_wide_footer_scripts
{String} Get your site's current footer scripts
site.has_site_wide_footer_scripts
{Boolean} Does you site have site wide footer scripts? True or false.
site.order_tracking_code
{String} Get your site's order tracking code
site.signup_tracking_code
{String} Get your site's signup tracking code
site.has_google_verification_meta_tag
{Boolean} Does your site have a google verification meta tag? True or false
site.google_verification_meta_tag
{String} Get your site's current google verification meta tag
site.current_user
{Drops::CurrentUser} Get the current logged-in user
site.currency_symbol
{String} Get the site's currency symbol
site.collections
{Drops::Collection} Get the site's collections
site.copyright
{String} Get the site's copyright (© Copyright {{ tenants name }} {{ current year }})
site.has_home_header
{Boolean} Does the site have a home header? True or false.
site.has_home_subheader
{Boolean} Does the site have a home subheader? Otherwise known as a header subtitle. True or false
site.home_header
{String} Get the site's home header
site.home_subheader
{String} Get the site's home subheader/subtitle
site.support_email
{String} Get the site's support email
site.has_terms
{Boolean} Does the site have terms and conditions? True or false
site.has_privacy_policy
{Boolean} Does the site have a privacy policy? True or false
site.has_logo
{Boolean} Does the site have a logo? True or false.
site.has_banner
{Boolean} Does the site have a banner image? True or false
site.white_labelling_activated
{Boolean} Does the tenant have white-labelling activated? White labelling in this case is used to remove vendor logos
site.name
{String} Get the name of the tenant's school
site.has_custom_left_links
{Boolean} Does the site have custom links for the left? True or false
site.custom_left_links
{Drops::CustomLink} Get the site's custom left links
site.has_custom_right_links
{Boolean} Does the site have custom links for the right? True or false
site.custom_right_links
{Drops::CustomLink} Get the site's custom right links
site.remote_signin_enabled
{Boolean} Does the tenant have remote sign-in enabled?
site.certificates_enabled
{Boolean} Does the tenant have certificates enabled?
site.banner_url
{String} Get the banner image url
site.logo_url
{String} Get the logo image url
site.dashboard_url
{String} Get the dashboard url
site.course_administrator_dashboard_url
{String} Get the course administrator dashboard url
site.affiliate_dashboard_url
{String} Get the affiliate dashboard url
site.sign_out_url
{String} Get the sign-out url
site.privacy_policy_url
{String} Get the privacy policy url
site.terms_url
{String} Get the terms and conditions url
site.home_url
{String} Get the home page url
site.root_url
{String} Get the root site page url
site.collections_url
{String} Get the site collections url
site.student_dashboard_url
{String} Get the student dashboard url
site.sign_in_url
{String} Get the sign-in url
site.account_edit_url
{String} Get the account edit url
site.account_edit_password_url
{String} Get the account password edit url
site.account_certificates_url
{String} Get the account certificates url
site.account_notifications_edit_url
{String} Get the account edit notifications url
site.account_billings_url
{String} Get the account billings url
site.account_orders_url
{String} Get the account orders url
site.affiliate_root_url
{String} Get the affiliate index url
site.affiliate_links_url
{String} Get the affiliate links url
site.affiliate_reports_url
{String} Get the affiliate reports url
site.edit_affiliate_settings_url
{String} Get the affiliate settings url


Theme

description
The theme variable contains settings related to your theme and is available on every page in your theme

locator
description
theme.name
{String} Get the theme's name
theme.author
{String} Get the theme's author
theme.version
{String} Get the theme's version
theme.documentation_url
{String} Get the theme's documentation url
theme.support_url
{String} Get the theme's support url
theme.style
{String} Get the compiled CSS for the theme
theme.settings
{Drops::Manifest} Get the theme's settings, defined in the theme's manifest


Base Page

description
These are availabile on any page

locator
description
page.page_identifier
{String} The identifier of the page. Signals liquid to render a particular template
page.header_required
{Boolean} Override if you have a page that should not show the header
page.footer_required
{Boolean} Override if you have a page that should not show the footer
page.header_without_links_required
{Boolean} Override if you have a page that should show the header with no links. For example, the checkout or the signin/signup pages
page.meta
{Hash} Page's meta data
page.open_graph
{Hash} Page's open graph data


Pages

These variables are only available on their specific pages.


Site Landing Page

The site landing page has access to any of the global variables. When building a site landing page, please take a look at a working example in the basic theme folder "Site Pages/Site Landing Page"


Enrollment

description
This provides information about an enrollment in a course.
context available
UNKNOWN

locator
description
enrollment.course_name
{String} Get the enrolled course's name
enrollment.completed_at
{String} Get the enrolled course's completed date
enrollment.certificate_url
{String} Get the enrolled course's certificate url


Affiliate Index Page

description
This is the page where an affiliate can view general affiliate information.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.affiliate_commission_percentage
Get the user's affiliate commission


Affiliate Links Page

description
This is the page where an affiliate can view their product links.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.homepage_link
{String} Get the homepage affiliate's link
page.affiliate_links
{Hash} Get the affiliate's product links
page.has_affiliate_links
{Boolean} Does the affiliate have any product links? True or false


Affiliate Reports Page

description
This is the page where an affiliate can view their affiliate data.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.total_commission_owed_in_dollars
{String} Get the user's total commission that is still owed
page.total_commission_paid_in_dollars
{String} Get the user's total commission that has been paid
page.commissions
{Drops::AffiliateCommission} Get the user's comissions
page.payouts
{Drops::AffiliatePayout} Get the user's payouts
page.visitor_dates
{Hash} Get the user's visitor dates
page.has_commissions
{Boolean} Does the user have any comission? True or False
page.has_payouts
{Boolean} Does the user have any payout? True or False
page.has_visitors
{Boolean} Has the user had any visitors? True or False


Affiliate Settings Page

description
This is the page where an affiliate can edit their affiliate settings.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page


Bundle Page

description
This is the landing page for a bundle. It is used to supply data to any bundle landing page template that you create.
context available
UNKNOWN

locator
description
page.page_identifier
The unique identifier for this page
page.bundle
{Drops::Bundle} Get bundle data
page.coupon
{Drops::Coupon} Get coupon data
page.coupon_code_provided
{Boolean} Has a coupon code been provided? True or false
page.seo_title
{String} Get the SEO Title
page.seo_description
{String} Get the SEO Description
page.keywords
{String} Get the product's keywords
page.is_hidden
{Boolean} Is the product hidden? True or false
page.product_is_course
{Boolean} Is the product a course?
page.product_is_bundle
{Boolean} Is the product a bundle?
page.landing_page_code
{String} Get the custom landing page code


Checkout Page

description
This is the page that the buyer is shown after making a purchase
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.checkout_form
{String} Get checkout form html
page.contains_subscription_product
{Boolean} Does the checkout include a subscription product? True or false
page.course_name
{String} Get the course name
page.course_price
{String} Get the course price
page.has_subscription_products
{Boolean} Does the course have subscription products? True or false. Duplicate of above
page.stripe_checkout_is_allowed
{Boolean} Is stripe checkout allowed? True or false.
page.checkout_coupons_disabled
{Boolean} Are coupons on checkout disabled? True or false.
page.header_without_links_required
{Boolean} Is a header without links required? Defaults to true.
page.product
{Drops::Product} The product being purchased
page.checkout_description
{String} The description of what is being purchased


Checkout Sign-in/Sign-out Page

description
This is the page that is displayed to an anonymous user as they enter the checkout flow
context available
UNKNOWN

locator
description
page.page_identifier
The unique identifier for this page
page.active_tab
{String} Get active tab
page.product
{Drops::Product} The product being purchased
page.checkout_description
{String} The description of what is being purchased
page.checkout_coupons_disabled
{Boolean} Are checkout coupons disabled? True or false.
page.header_without_links_required
{Boolean} Is a header without links required? True or false. Defaults to true.
page.has_remote_signin
{Boolean} Does the user have a remove sign-in? True or false
page.has_linkedin_enabled
{Boolean} Does the user have LinkedIn enabled? True or false
page.supports_remote_auth
{Boolean} Does the tenant support remote authorization? True or false
page.linkedin_oauth_url
{String} User LinkedIn oAuth Url
page.tenant_oauth_url
{String} Tenant oAuth Url
page.tenant_auth_text
{String} Tenant authorization text
page.sign_up_url
{String} Get the sign-in url
page.forgot_password_url
{String} Get the forgot password url
page.sign_in_url
{String} Get the sign-in url


Checkout Thank-you Page

description
This is the page that the buyer is shown after making a purchase
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.take_course_url
{String} Get the take course url
page.order.billing_email
{String} Get the user's email
page.order.billing_name
{String} Get the user's name
page.order.cost {String} Get the order cost
page.order.order_number     {String} Get the order number
page.order.paymet_method {String} Get the order's payment method
page.order.product_id     {String} Get the unique identifier of the product that was purchased
page.order_receipt_url
{String} Get the order-receipt URL
page.order_referral_code    
{String} Get the order's referral code
page.items
{Drops::LineItem} Get a list of items that have been purchased
page.product_is_course
{Boolean} Is the product a course? True or false.
page.bundled_courses
{Drops::Course} Get bundled courses
page.has_more_bundled_courses
{Boolean} Does the purchased course have more bundled courses? True or false
page.remaining_bundle_courses_message
{String} Get the remaining bundle courses message


Collection Page

description
This shows courses and bundles in a specific collection/category
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.name
{String} Get the name of the collection
page.current_collection_id
{Number} Get the selected collection id
page.current_collection_slug
{String} get the slug of the collection
page.current_collection_name
{String} Get the name of the current collection
page.should_paginate_products
{Boolean} Should the collection be paginated? Returns true if the number of pages in the collection is greater than 1. True or false.
page.product_page_numbers
{Array} Get available page numbers for pagination of the collection
page.current_product_page
{Number} Get the current product's page
page.has_products
{Boolean} Does the collection have products? True or false.
page.products
{Drops::Product} Get the products to be rendered on the page
page.has_search_query
{Boolean} Does the page have a search query applied? True or false.
page.search_query
{String} Get the currently applied search query


Collections Page Drop

description
This page shows all the published courses without filtering by collection/category
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.current_collection_id
{Number} Get the seleceted collection id
page.should_paginate_products
{Boolean} Should the collection be paginated? Returns true if the number of pages in the collection is greater than 1. True or false.
page.product_page_numbers
{Array} Get available page numbers for pagination of the collection
page.current_product_page
{Number} Get the current product's page
page.has_products
{Boolean} Does the collection have products? True or false.
page.products
{Drops::Product} Get the products to be rendered on the page
page.has_search_query
{Boolean} Does the page have a search query applied? True or false.
page.search_query
{String} Get the currently applied search query


Course Landing Page

description
This is the landing page for a course. It is used to supply data to any course landing page template that you create.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.course
{Drops::Course} Get course data
page.coupon
{Drops::Coupon} Get coupon data
page.coupon_code_provided
{Boolean} Has a coupon code been provided? True or false
page.thinkific_analytics_course_data
{String} Get the thinkific analyitics course data
page.seo_title
{String} Get the SEO Title
page.seo_description
{String} Get the SEO Description
page.keywords
{String} Get the product's keywords
page.is_hidden
{Boolean} Is the product hidden? True or false
page.product_is_course
{Boolean} Is the product a course?
page.product_is_bundle
{Boolean} Is the product a bundle?
page.landing_page_code
{String} Get the custom landing page code


Custom Page

description
These are the variables available on any custom page that you create
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.content
{String} Get the content of the page (returns marked up html)
page.name
{String} Get the name of the page
page.published
{Boolean} Is the page published? True or false
page.public
{Boolean} Is the page public? True or false
page.url
{String} Get the url of the page
page.seo_title
{String} Get the page's SEO Title
page.seo_description
{String} Get the page's SEO Description
page.seo_metatags
{String} Get the page's SEO Metatags
page.keywords
{String} Get the page's keywords


Dashboard Page

description
This page shows all the published courses that a student is currently enrolled in, but also exposes variables to access all courses within the school
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.status_types
{Hash} Get the possible enrollment states to populate the status list for searching
page.all_cards
{Drops::DashboardCourseCard} Get all product cards (cards of any status) that are attached to the student
page.enrolled_cards
{Drops::DashboardCourseCard} Get all product cards in which the student is enrolled
page.not_enrolled_cards
{Drops::DashboardCourseCard} Get all product cards attached to the student in which the student is not enrolled
page.current_collection_id
{Number} Get the current collection id
page.current_collection_name
{String} Get the current collection name
page.current_collection_slug
{String} Get the current collection slug
page.has_search_query
{Boolean} Does the page have a search query applied? True or false.
page.search_query
{String} Get the currently applied search query


Edit Course Review Page

description
This is the page where a student can review a course. Specifically, this page is where the student edits a review that they've already made.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.course_review
{Drops::CourseReview} Get the course review data


Express Sign In Page

description
This is the page that your users set their password on
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page


Home Page

description
This is the main landing page of the site. It is shown when someone visits the root url of your site (mysite.thinkific.com/), except when you have only one published course or bundle.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.should_paginate_products
{Boolean} Should the collection be paginated? Returns true if the number of pages in the collection is greater than 1. True or false.
page.product_page_numbers
{Array} Get available page numbers for pagination of the collection
page.current_product_page
{Number} Get the current product's page
page.has_products
{Boolean} Does the collection have products? True or false.
page.products
{Drops::Product} Get the products to be rendered on the page


My Account Page

description
This is the page where a student can view and edit their account details.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.timezone_options
{Hash} Get timezone options
page.site_locale_options
{Hash} Get locale options
page.has_student_locale_selection_enabled
{Boolean} Does the student have locale selection enabled? True or False


My Account Billings Page

description
This is the page where a student can view their saved billing information (if any).
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.edit_billings_form
{String} Get the edit billings form html
page.has_form_errors
{Boolean} Does the form have errors? True or false
page.form_error_messages
{Array} Get the form error messages
page.form_error_count
{Number} Get the form error count


My Account Certificates Page

description
This is the page where a student can view their certificates. Note: This page is only shown if the site owner has the Completion Certificates feature.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.enrollments_with_certificates
{Drops::Enrollment} Get enrollments with certificates


My Account Credit Card Page

description
This is the page that the student can use to add/modify/delete their credit card
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.my_account_credit_card_form
{String} Get credit card form html
page.header_without_links_required
{Boolean} Is a header without links required? Defaults to true.


My Account Notifications Page

description
This is the page where a student can view and edit their notifications settings.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.allow_weekly_email_reminders
{Boolean} Allow weekly email remainders? True or False
page.allow_discussion_question_answered_email
{Boolean} Allow discussion question answered email? True or False


My Account Order Page

description
This is the page where a student can view a single order in detail.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.order
{Drops::Order} Get the order


My Account Orders Page

description
This is the page where a student can view their orders.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.has_orders
{Boolean} Does the account have any orders? True or false
page.orders
{Drops::Order} Get the account's orders


My Account Password Page

description
This is the page under 'My Account' where a user can change their password.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page


New Course Review Page

description
This is the page where a student can review a course. Specifically, this page is where the student creates the review in the first place.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.course_review
{Drops::CourseReview} Get the course review data


Password Reset Page

description
This is the page where a student will land after following the 'change password' link from their email. Here they can change their password.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page


Password Reset Request Page

description
This is the page where a student can request a change of their password
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page


Password Reset Sent Page

description
This is the page where a student will land after requesting a change of password. Displays a message to check their email.
context available
UNKNOWN

locator
description
page.page_identifier
# {String} The unique identifier for this page


Paypal Confirm Page

description
This is the page that a buyer lands on after going through the PayPal Express Checkout process. It is the last step where they must confirm the purchase.
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.paypal_confirmation_form
{String} Get paypal confirmation form html
page.product_display_price
{String} Get the product's display price
page.product
{Drops::Product} The product being purchased
page.secure_payment_badge_url
{String} Get the secure payment badge url


Sign In Page

description
This is the page that your users sign in on
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.has_remote_signin
{Boolean} Does the user have a remove sign-in? True or false
page.has_linkedin_enabled
{Boolean} Does the user have LinkedIn enabled? True or false
page.supports_remote_auth
{Boolean} Does the tenant support remote authorization? True or false
page.linkedin_oauth_url
{String} User LinkedIn oAuth Url
page.tenant_oauth_url
{String} Tenant oAuth Url
page.tenant_auth_text
{String} Tenant authorization text
page.sign_up_url
{String} Get the sign-in url
page.forgot_password_url
{String} Get the forgot password url
page.sign_in_url
{String} Get the sign-in url


Sign Up Page

description
This is the page that your users sign up on
context available
UNKNOWN

locator
description
page.page_identifier
{String} The unique identifier for this page
page.has_remote_signin
{Boolean} Does the user have a remove sign-in? True or false
page.has_linkedin_enabled
{Boolean} Does the user have LinkedIn enabled? True or false
page.supports_remote_auth
{Boolean} Does the tenant support remote authorization? True or false
page.linkedin_oauth_url
{String} User LinkedIn oAuth Url
page.tenant_oauth_url
{String} Tenant oAuth Url
page.tenant_auth_text
{String} Tenant authorization text
page.sign_up_url
{String} Get the sign-in url
page.forgot_password_url
{String} Get the forgot password url
page.sign_in_url
{String} Get the sign-in url


Objects

These variables are reachable in some pages

Affiliate Commission

description
Available variables on AffiliateCommission objects
example liquid accessor
{% for commission in page.commissions %}

locator
description
commission.product_name
{String} Get product's name
commission.date
{String} Get product's creation date
commission.sale_total
{String} Get product's total sale
commission.sale_was_refunded
{Boolean} Has the sale been refunded? True or False
commission.amount_without_refunds
{String} Amount of commissions ignoring refunds
commission.amount_with_any_refunds
{String} Amount of commission including any refunds


Affiliate Payout

description
Available variables on AffiliatePayout objects
example liquid accessor
{% for payout in page.payouts %}

locator
description
payout.date
{String} Get affiliate's payout creation date
payout.amount
{String} Get affiliate's amount


Block

description
This drop exposes the type and settings for a block within a section.

locator
description
block.type
{String} Block type
block.settings
{Drops::Manifest} Block settings


Bundle

description
Contains information about the bundle
example liquid accessor
{% for bundle in page.bundle %}

locator
description
bundle.id
{Number} Get the bundle's ID
bundle.name
{String} Get the bundle's name
bundle.description
{String} Get the bundle's description
bundle.status
{String} Get the bundle's status
bundle.links
{Drops::ProductLinks} Get the bundle's links
bundle.is_public
{Boolean} Is the bundle public? True or false
bundle.is_free
{Boolean} Is the bundle free? True or false
bundle.tagline
{String} Get the bundle's tagline
bundle.display_price
{String} Get the bundle's display price
bundle.enroll_free_button_text
{String} Get the bundle's enroll for free text
bundle.previously_purchased
{Boolean} Has the bundle been previously purchased by the current user? True or false
bundle.buy_button_text
{String} Get the bundle's buy button text
bundle.courses
{Drops::Course} Get the bundle's courses
bundle.course_contents_description
{String} Get the bundle's course contents description
bundle.coupon_supported
{Boolean} Does the course support coupons? True or false
bundle.banner_overlay_opacity_percentage
{String} Get the bundle's banner overlay opacity percentage
bundle.card_image_url
{String} Get the bundle's card image url
bundle.banner_image_url
{String} Get the bundle's banner image url
product.collections
{Drops::Collection} Collections that the card product card belongs to


Chapter

description
Available liquid variables on the chapter object
example liquid accessor
{% for chapter in course.chapters %}

locator
description
chapter.contents
{Drops::Content} Get the chapter's contents
chapter.name
{String} Get the chapter's name
chapter.duration_in_seconds
{Number} Get the chapter's duration in seconds (chapter must have a timed content item, e.g. video)
chapter.duration_in_seconds_as_time
{Number} Get the chapter's duration in seconds as time
course.has_lessons or chapter.has_lessons
{Boolean} Does the course or chapter have lessons? True or false
course.lesson_count or chapter.lesson_count
{Number} Get the course or chapter lessons count
course.has_quizzes or chapter.has_quizzes
{Boolean} Does the course or chapter have quizzes? True or false
course.quiz_count or chapter.quiz_count
{Number} Get the course or chapter quizzes count
course.has_surveys or chapter.has_surveys
{Boolean} Does the course or chapter have surveys? True or false
course.survey_count or chapter.survey_count
{Number} Get the course or chapter surveys count
course.has_multimedia or chapter.has_multimedia
{Boolean} Does the course or chapter have multimedias? True or false
course.multimedia_count or chapter.multimedia_count
{Number} Get the course or chapter multimedias count
course.has_text or chapter.has_text
{Boolean} Does the course or chapter have text lessons? True or false
course.text_count or chapter.text_count
{Number} Get the course or chapter texts count
course.has_pdfs or chapter.has_pdfs
{Boolean} Does the course or chapter have pdfs? True or false
course.pdf_count or chapter.pdf_count
{Number} Get the course or chapter pdfs count
course.has_disqus or chapter.has_disqus
{Boolean} Does the course or chapter have disqus chats? True or false
course.disqus_count or chapter.disqus_count
{Number} Get the course or chapter disqus count
course.has_audios or chapter.has_audios
{Boolean} Does the course or chapter have audios? True or false
course.audio_count or chapter.audio_count
{Number} Get the course or chapter audios count
course.has_downloads or chapter.has_downloads
{Boolean} Does the course or chapter have downloads? True or false
course.download_count or chapter.download_count
{Number} Get the course or chapter downloads count
course.has_presentations or chapter.has_presentations
{Boolean} Does the course or chapter have presentations? True or false
course.presentation_count or chapter.presentation_count
{Number} Get the course or chapter presentations count
course.has_brillium_exams or chapter.has_brillium_exams
{Boolean} Does the course or chapter have brillium exams? True or false
course.brillium_exam_count or chapter.brillium_exam_count
{Number} Get the course or chapter brillium exams count
course.has_duration or chapter.has_duration
{Boolean} Does the course or chapter have an expected duration set? True or false
course.duration or chapter.duration
{Number} Get the expected course or chapter duration


Collections Drop

description
These variables are available for use in the product search bar when viewing the collection pages or collections page
example liquid accessor
{% for collection in site.collection %}

locator
description
collection.name
{String} Get collection's name
collection.id
{Number} Get collection's id
collection.url
{String} Get collection's url


Content

description
Variables that are available in chapter objects
example liquid accessor
{% for content in chapter.contents %}

locator
description
content.name
{String} Get the content's name
content.free
{Boolean} Is the content free? True or false.
content.icon_css_class
{String} Get the content's icon css class
content.take_course_url
{String} Get the content's url


Coupon

description
This provides information about the coupon code provided

locator
description
coupon.name
{String} Get coupon's name
coupon.is_valid
{Boolean} Has a valid coupon been entered? True or false
coupon.is_percentage
{Boolean} Is the currently applied coupon applied as a percentage off? True or false
coupon.discounted_price
{String} Get the product's price with the currently applied coupon
coupon.discounted_amount
{String} Get the currently applied coupon's discount amount
coupon.full_price
{String} Get the product's full price (without coupon applied)


Course

description
Variables accessible on course-related pages (such as course landing) on the page variable as well as elsewhere (e.g., bundle pages) through their own page-specific pages (e.g., page.bundle_courses on a bundle page)
example liquid accessor
{% for course in page.bundle_courses %}

locator
description
course.id or page.course.id
{Number} Get the course's ID
course.name or page.course.name
{String} Get the course's name
course.course_card_text or page.course.course_card_text
{String} Get the course's card text
course.links or page.course.links
{Drops::ProductLinks} Get the course's available links
course.chapters or page.course.chapters
{Drops::Chapter} Get the course's chapters
course.is_draft or page.course.is_draft
{Boolean} Is the course in draft state? True or false
course.is_public or page.course.is_public
{Boolean} Is the course public? True or false
course.status or page.course.status
{String} The course's current status
course.has_free_trial or page.course.has_free_trial
{Boolean} Does the course have a free trial available to this user? True or false
course.is_free or page.course.is_free
{Boolean} Is the course free? True or false
course.user_can_purchase or page.course.user_can_purchase
{Boolean} Is the course on sale to this user? True or false
course.user_can_resume or page.course.user_can_resume
{Boolean} Is the user able to resume this course? True or false
course.user_has_purchased or page.course.user_has_purchased
{Boolean} Has the user purchased this course? True or False
course.user_is_enrolled or page.course.user_is_enrolled
{Boolean} Is the user enrolled in the course? True or false
course.user_enrollment_complete or page.course.user_enrollment_complete
{Boolean} Has the user completed the enrollment? True or false
course.reviews_enabled or page.course.reviews_enabled
{Boolean} Are reviews enabled for this course? True or false
course.reviews or page.course.reviews
{Drops::CourseReviews} Get the course's reviews
course.card_image_url or page.course.card_image_url
{String} The course's card image url
course.product or page.course.product
{Drop::Product} Get the course's current product
course.display_price or page.course.display_price
{String} Get the course's display price
course.buy_button_text or page.course.buy_button_text
{String} Get the course's buy button text
course.collections or page.course.collections
{Drops::Collection} Get the products's collection
course.coupon_supported or page.course.coupon_supported
{Boolean} Does the course support coupons? True or false
course.additional_prices or page.course.additional_prices
{Drops::ProductPrice} Get the course's additional prices
course.has_lessons or chapter.has_lessons
{Boolean} Does the course or chapter have lessons? True or false
course.lesson_count or chapter.lesson_count
{Number} Get the course or chapter lessons count
course.has_quizzes or chapter.has_quizzes
{Boolean} Does the course or chapter have quizzes? True or false
course.quiz_count or chapter.quiz_count
{Number} Get the course or chapter quizzes count
course.has_surveys or chapter.has_surveys
{Boolean} Does the course or chapter have surveys? True or false
course.survey_count or chapter.survey_count
{Number} Get the course or chapter surveys count
course.has_multimedia or chapter.has_multimedia
{Boolean} Does the course or chapter have multimedias? True or false
course.multimedia_count or chapter.multimedia_count
{Number} Get the course or chapter multimedias count
course.has_text or chapter.has_text
{Boolean} Does the course or chapter have text lessons? True or false
course.text_count or chapter.text_count
{Number} Get the course or chapter texts count
course.has_pdfs or chapter.has_pdfs
{Boolean} Does the course or chapter have pdfs? True or false
course.pdf_count or chapter.pdf_count
{Number} Get the course or chapter pdfs count
course.has_disqus or chapter.has_disqus
{Boolean} Does the course or chapter have disqus chats? True or false
course.disqus_count or chapter.disqus_count
{Number} Get the course or chapter disqus count
course.has_audios or chapter.has_audios
{Boolean} Does the course or chapter have audios? True or false
course.audio_count or chapter.audio_count
{Number} Get the course or chapter audios count
course.has_downloads or chapter.has_downloads
{Boolean} Does the course or chapter have downloads? True or false
course.download_count or chapter.download_count
{Number} Get the course or chapter downloads count
course.has_presentations or chapter.has_presentations
{Boolean} Does the course or chapter have presentations? True or false
course.presentation_count or chapter.presentation_count
{Number} Get the course or chapter presentations count
course.has_brillium_exams or chapter.has_brillium_exams
{Boolean} Does the course or chapter have brillium exams? True or false
course.brillium_exam_count or chapter.brillium_exam_count
{Number} Get the course or chapter brillium exams count
course.has_duration or chapter.has_duration
{Boolean} Does the course or chapter have an expected duration set? True or false
course.duration or chapter.duration
{Number} Get the expected course or chapter duration


Course Review

description
Variables available on course review objects
example liquid accessor
None

locator
description
course.review.title
{String} Get the review's title
course.review.user
{String} Get the user who posted the review
course.review.review_text
{String} Get the review's text
course.review.rating
{String} Get the review's rating
course.review.course
{Drops::Course} Get the attached course for this review


Reviews

description

example liquid accessor
{% for review in course.reviews %}

locator
description
course.reviews.approved
{Drops::CourseReview} Get the course's approved reviews
course.reviews.approved_count
{Number} Get the course's approved reviews count
course.reviews.average_rating
{Number} Get the course's average review rating


Custom Link

description
Variables available for any user-created custom links
example liquid accessor
{% for link in site.custom_left_links %} or {% for link in site.custom_right_links %}

locator
description
link.formatted_url
{String} Get the custom link's properly formatted target url (href)
link.target
{String} Get the custom link's target (e.g., Link)
link.formatted_text
{String} Get the custom link's formatted text
link.position
{String} Get the custom link's position within the menu
link.is_private
{Boolean} Is the link private? True or false
link.is_public
{Boolean} Is the link public? True or false


Sign Up Page

description
This provides data to help render custom sign-up fields
example liquid accessor
{% for field in custom_signup_fields %}

locator
description
field.name
{String} Get the custom signup field's name attribute
field.value
{String} Get the custom signup field's value
field.label
{String} Get the custom signup field's label
field.required
{Boolean} Is the custom signup field required? True or False
field.hidden_input
{String} Get the custom signup field's hidden input
field.type_is_country
{Boolean} Is the custom signup field's type country? True or False
field.country_options
{Array} Get custom signup field's country options


Dashboard Course Card Drop

description
Variables available on the student dashboard for the school. Please check out the file "snippets/pagination" in the basic theme package to see an working example of how to use these variables.
example liquid accessor
{% for card in paginate.collection %}

locator
description
card.created_at
{String} Get the product's creation date
card.display_price
{String} Get the product's display price
card.enrollment_complete
{Boolean} Is the student's enrollment in this product complete? True or false
card.enrollment_expired
{Boolean} Is the student's enrollment in this product expired? True or false
card.enrollment_expiry_date
{String} Get the student's enrollment expiry date
card.has_enrollment
{Boolean} Is the student enrolled in the product? True or false
card.last_accessed
{String} Get the date of last student access to the product
card.name
{String} Get the coures's name
card.name_truncated
{String} Get the course's truncated name (truncated to 70 characters)
card.position
{String} Get the course's position within the dashboard
card.progress_percentage
{String} Get the course's percentage completed
card.show_enroll_in_free_trial_link
{Boolean} Should the card show the free trial link? True or false
card.show_enroll_for_free_link
{Boolean} Should the card show the enroll for free link? True or false
card.show_purchase_link
{Boolean} Should the card show the purchase link? True or false
card.show_resume_link
{Boolean} Should the card show the resume link? True or false
card.subtitle_truncated
{String} Get the course's truncated subtitle
card.subtitle
{String} Get the course's subtitle
card.course_reviews_enabled
{Boolean} Are reviews enabled for this course? True or false
card.is_hidden
{Boolean} Is the course hidden? True or false
card.image_url
{String} Get the course's card image url
card.landing_page_url
{String} Get the course's landing page url
card.free_enroll_url
{String} Get the course's free enrollment url
card.free_trial_enroll_url
{String} Get the course's free trial enrollment url
card.purchase_course_url
{String} Get the course's purchase url
card.resume_course_url
{String} Get the course's resume url
card.review_course_url
{String} Get the course's review url
card.course_review_url
{String} Get the course's review url (repeat of above)


Instructor

description
Contains information about the instructor

locator
description
instructor.first_name
{String} Get the instructor's first name
instructor.last_name
{String} Get the instructor's last name
instructor.full_name
{String} Get the instructor's full name
instructor.email
{String} Get the instructor's email
instructor.title
{String} Get the instructor's title
instructor.bio
{String} Get the instructor's bio
instructor.avatar
{String} Get the instructor's avatar


JSON Object

description
A drop that accepts a hash of attributes and makes these attributes available as properties on the drop.

No variables are available yet!



Line Item

description
These variables yield the name of the product which a student has just purchased
example liquid accessor
{% for item in page.items %}

locator
description
item.name
{String} Get the order's name
item.description
{String} Get the order's description
item.price
{String} Get the order's cost


Manifest

description
These variables represent the settings for a theme or section, which are defined in their releative schema (within manifest.json for theme and within the {% schema %} block for sections).

No variables are available yet!



Order

description
Variables available for the order object
example liquid accessor
{% for order in page.orders %}

locator
description
order.id
{Number} Get the order's ID
order.number
{Number} Get the order's number
order.has_subscription
{Boolean} Does the order have a subscription product in it? True or false
order.has_payment_plan
{Boolean} Does the order have a payment plan in it? True or False
order.description_of_subscription
{String} Get the order's subscription description
order.product_name
{String} Get the product's name
order.created_date
{String} Get the order's creation date
order.payment_method
{String} Get the order's payment method
order.payment_method_key
{String} Get the order's payment method key
order.status
{String} Get the order's status
order.status_key
{String} Get the order's status key
order.cost
{String} Get the order's cost
order.masked_card_numbers
{String} Get the order's masked card numbers
order.product_expiry_date
{String} Get the expiry date of the product contained in the order
order.coupon
{Drops::Coupon} Get the coupon used in the order
order.line_items
{Drops::LineItem} Get order's line items
order.refunded_transactions
{Drops::OrderTransaction} Get order's refunded transactions


Order transaction

description
Variables available for the order transaction object
example liquid accessor
{% for transaction in page.order.refunded_transactions %}

locator
description
transaction.amount
{String} Get order's transaction amount


Product

description
Available variables on Product objects
example liquid accessor
{% for product in page.products %}

locator
description
product.name
{String} Get the product's name
product.display_price
{String} Get the product's display price
product.links
{Drops::ProductLinks} Get the product's links
product.is_course
{Boolean} Is the product a course? True or False
product.is_bundle
{Boolean} Is the product a bundle? True or False
product.course
{Drops::Course} Get the product's course
product.bundle
{Drops::Course} Get the product's bundle
product.card_image_url
{String} Get the product's card image url


Product Links

description
All of the course or bundle related links available. product_type is either 'Course' or 'Bundle'

locator
description
.links.enroll_free_trial
{String} Get product's enroll free trial url
.links.enroll_free
{String} Get product's enroll free url
.links.buy
{String} Get product's buy url
.links.resume
{String} Get product's resume url
.links.review
{String} Get product's review url
.links.landing_page_url
{String} Get product's landing page url
.links.add_to_cart
{String} Get product's add to cart url


Product Price

description
Available variables on Product objects
example liquid accessor
{% for product in page.products %}

locator
description
product.name
{String} Get the price's name
product.display_price
{String} Get the price's display name
product.buy_button_text
{String} Get the price's buy button text
product.product
{Drops::Product} Get the product that the price belongs to
product.links
{Drops::Product} Get the price's links


Section

description
This drop exposes settings and blocks for a section.

locator
description
section.settings
{Drops::Manifest} Get the section's settings
section.blocks
{Drops::Block} Get the section's blocks
section.id
{String} Get section's unique id


Authorization Helpers

description
These variables refer to the various authorization methods that are enabled for the school and are therefore available for authorizing students

locator
description
page.has_remote_signin
{Boolean} Does the user have a remove sign-in? True or false
page.has_linkedin_enabled
{Boolean} Does the user have LinkedIn enabled? True or false
page.supports_remote_auth
{Boolean} Does the tenant support remote authorization? True or false
page.linkedin_oauth_url
{String} User LinkedIn oAuth Url
page.tenant_oauth_url
{String} Tenant oAuth Url
page.tenant_auth_text
{String} Tenant authorization text
page.sign_up_url
{String} Get the sign-in url
page.forgot_password_url
{String} Get the forgot password url
page.sign_in_url
{String} Get the sign-in url


Collection Helpers

description
These variables are accessible from the collection/collections pages

locator
description
page.should_paginate_products
{Boolean} Should the collection be paginated? Returns true if the number of pages in the collection is greater than 1. True or false.
page.product_page_numbers
{Array} Get available page numbers for pagination of the collection
page.current_product_page
{Number} Get the current product's page
page.has_products
{Boolean} Does the collection have products? True or false.
page.products
{Drops::Product} Get the products to be rendered on the page


Drop Helper

description


No variables are available yet!



Course or Chapter Contents

description
Variables on each course describing the contents of the course
example liquid accessor
{% for course in page.bundle_courses %}

locator
description
course.has_lessons or chapter.has_lessons
{Boolean} Does the course or chapter have lessons? True or false
course.lesson_count or chapter.lesson_count
{Number} Get the course or chapter lessons count
course.has_quizzes or chapter.has_quizzes
{Boolean} Does the course or chapter have quizzes? True or false
course.quiz_count or chapter.quiz_count
{Number} Get the course or chapter quizzes count
course.has_surveys or chapter.has_surveys
{Boolean} Does the course or chapter have surveys? True or false
course.survey_count or chapter.survey_count
{Number} Get the course or chapter surveys count
course.has_multimedia or chapter.has_multimedia
{Boolean} Does the course or chapter have multimedias? True or false
course.multimedia_count or chapter.multimedia_count
{Number} Get the course or chapter multimedias count
course.has_text or chapter.has_text
{Boolean} Does the course or chapter have text lessons? True or false
course.text_count or chapter.text_count
{Number} Get the course or chapter texts count
course.has_pdfs or chapter.has_pdfs
{Boolean} Does the course or chapter have pdfs? True or false
course.pdf_count or chapter.pdf_count
{Number} Get the course or chapter pdfs count
course.has_disqus or chapter.has_disqus
{Boolean} Does the course or chapter have disqus chats? True or false
course.disqus_count or chapter.disqus_count
{Number} Get the course or chapter disqus count
course.has_audios or chapter.has_audios
{Boolean} Does the course or chapter have audios? True or false
course.audio_count or chapter.audio_count
{Number} Get the course or chapter audios count
course.has_downloads or chapter.has_downloads
{Boolean} Does the course or chapter have downloads? True or false
course.download_count or chapter.download_count
{Number} Get the course or chapter downloads count
course.has_presentations or chapter.has_presentations
{Boolean} Does the course or chapter have presentations? True or false
course.presentation_count or chapter.presentation_count
{Number} Get the course or chapter presentations count
course.has_brillium_exams or chapter.has_brillium_exams
{Boolean} Does the course or chapter have brillium exams? True or false
course.brillium_exam_count or chapter.brillium_exam_count
{Number} Get the course or chapter brillium exams count
course.has_duration or chapter.has_duration
{Boolean} Does the course or chapter have an expected duration set? True or false
course.duration or chapter.duration
{Number} Get the expected course or chapter duration


Drop Manifest Helper

description


No variables are available yet!



Product Card Helpers

description
Base variables available to any product card objects (e.g, bundle card, course card)

locator
description
product.collections
{Drops::Collection} Collections that the card product card belongs to


Product

description
Base variables available to any product objects (e.g, bundles, courses)

locator
description
page.seo_title
{String} Get the SEO Title
page.seo_description
{String} Get the SEO Description
page.keywords
{String} Get the product's keywords
page.is_hidden
{Boolean} Is the product hidden? True or false
page.product_is_course
{Boolean} Is the product a course?
page.product_is_bundle
{Boolean} Is the product a bundle?
page.landing_page_code
{String} Get the custom landing page code


Search Query Helpers

description
These variables are accessible from the collection/collections pages and the student dashboard page.

locator
description
page.has_search_query
{Boolean} Does the page have a search query applied? True or false.
page.search_query
{String} Get the currently applied search query


Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.