All of Liquid's syntax, standard filters, tags and blocks are supported.
Here is a list of everything else available to you in your custom templates:
Sets classes on the body tag
{% body_class home %}
Sets a cookie
{% cookie test = 'hello' %}
Sets the meta tags to use for this page. Defaults are site, page, campaign and article.
Have a look in layout/meta to see how it's used.
{% meta article %}
Sets the secure session cookie
{% session test = 'hello' %}
Sets the layout for this view
{% layout %}{{ layout.default }}{% endlayout %}
{% layout %}{{ layout.dialog }}{% endlayout %}
{% layout %}layout_name{% endlayout %}
Sets the subtitle in the tagline for this view
{% subtitle %}subtitle text{% endsubtitle %}
Sets the tagline title for this view
{% tagline %}subtitle text{% endtagline %}
Sets the document title for this view
{% title %}subtitle text{% endtitle %}
Shuffle array
{% assign new_array = array | shuffle %}
merge
a1, a2
Merge arrays
{% assign new_array = array | merge: array2 %}
select
a, options
Select the elements that match options (Hash)
find a, optionsSelect the elements that match options (Hash)
sort_by a, fieldSort by field value
option_list a, options = {}Make options for country select
Convert string or value to a float number
to_i numConvert string or value to integer
minutes_in_words timestampGet minutes in words since time
to_currency val, options = {}Display a number as currency
to_decimal val, options = {}Display a float (percentage) with correct punctuation
min fRemove the trailing decimals from a float number if any
increment num, step = 1Increment number
decrement num, step = 1Decrement number
Alternate access to drop methods
where query, *optionsSet up database query, return a cursor
limit query, limitSet database query result limit
order query, *optionsSet database query result order (sort)
all queryExecute query and return array of results
paginate query, options = {}Paginate query and return array of results
count queryCount number of entries in database query. Alias for 'size'
json drop, options = {}Get the json attributes from tag
category query, link, limit = nilUsed on the discover page to display campaigns
search string, location = nilCampaign search
Date format
Lookup translation
languages keyReturn array of system languages
liquid strParse as liquid
script_tag pathsScript tag
style_tag pathsStyle tag
encode inputEncode string. Aliases: e
unescape_html strUnescape HTML
strip_html strStrip html
iso_lang strGet the iso version for languages
froala_lang strGet the froala version for languages
flip strFlip a string or number from -1 to 1
starts_with? string, patternReturn true if string starts with pattern. Alias: start_with?
stamp pathReturn the path with timestamp added
inspect varInspect object
klass varPrint class name of object
Standard time format
days_ago date, type = :noyearTransform the date into how many days left
Ad image
urlAd url
timestampAd timestamp
site_idAd site_id
siteAd site
Article link
published_atArticle published_at
titleArticle title escaped
content_htmlArticle content_html
ingressArticle ingress escaped
ingress_htmlArticle ingress_html
descriptionArticle description escaped
description_htmlArticle description_html
contentArticle content escaped
image_urlArticle image_url
finishedArticle finished
publishedArticle published
tagsArticle tags
vimeo?Article vimeo?
youtube?Article youtube?
image?Article image?
video_idArticle video_id
set_video_imageArticle set_video_image
urlArticle url
user_idArticle user_id
site_idArticle site_id
userArticle user
siteArticle site
Article comment raw escaped
htmlArticle comment html
user_idArticle comment user_id
article_idArticle comment article_id
userArticle comment user
articleArticle comment article
Campaign name escaped
durationCampaign duration
category_linkCampaign category_link
linkCampaign link
video_imageCampaign video_image
video_urlCampaign video_url
urlCampaign url
keyCampaign key
badge_embedCampaign badge_embed
category_nameCampaign category_name escaped
custom_fieldsCampaign custom_fields
headlineCampaign headline escaped
locationCampaign location escaped
pledgedCampaign pledged
percentCampaign percent
statusCampaign status
expires_atCampaign expires_at
expiring?Campaign expiring?
video_embed_codeCampaign video_embed_code
goalCampaign goal
min_goalCampaign min_goal
max_goalCampaign max_goal
about_htmlCampaign about_html
aboutCampaign about escaped
approvedCampaign approved
submittedCampaign submitted
expired?Campaign expired?
inactive?Campaign inactive?
funded?Campaign funded?
deletedCampaign deleted
can_receive_contributions?Campaign can_receive_contributions?
has_limit?Campaign has_limit?
has_location?Campaign has_location?
successful?Campaign successful?
editable?Campaign editable?
draft?Campaign draft?
never_ending?Campaign never_ending?
keep_it_all?Campaign keep_it_all?
all_or_nothing?Campaign all_or_nothing?
voting?Campaign voting?
can_expire?Campaign can_expire?
show_location?Campaign show_location?
time_left_timeCampaign time_left_time
time_left_unitCampaign time_left_unit
wepay_payment_authorized?Campaign wepay_payment_authorized?
stripe_payment_authorized?Campaign stripe_payment_authorized?
dwolla_payment_authorized?Campaign dwolla_payment_authorized?
mangopay_payment_authorized?Campaign mangopay_payment_authorized?
short_urlCampaign short_url
reminder_onCampaign reminder_on
storage_usedCampaign storage_used
fixed_amountCampaign fixed_amount
show_contribution_amountCampaign show_contribution_amount
approved_atCampaign approved_at
closed_atCampaign closed_at
notesCampaign notes escaped
location_dataCampaign location_data
reminders_sentCampaign reminders_sent
successful_notifiedCampaign successful_notified
paypal_accountCampaign paypal_account escaped
wepay_payment_accountCampaign wepay_payment_account escaped
wepay_payment_tokenCampaign wepay_payment_token escaped
stripe_payment_accountCampaign stripe_payment_account escaped
stripe_payment_tokenCampaign stripe_payment_token escaped
archivedCampaign archived
visibleCampaign visible
featuredCampaign featured
activeCampaign active
campaign_durationCampaign campaign_duration
campaign_strategyCampaign campaign_strategy
contribution_amountCampaign contribution_amount
notificationsCampaign notifications
coupon_codeCampaign coupon_code escaped
vimeo_video?Campaign vimeo_video?
youtube_video?Campaign youtube_video?
facebook_video?Campaign facebook_video?
image?Campaign image?
video_idCampaign video_id
get_video_imageCampaign get_video_image
get_pledgedCampaign get_pledged
awaiting_confirmation?Campaign awaiting_confirmation?
awaiting_approval?Campaign awaiting_approval?
can_be_approvedCampaign can_be_approved
get_campaign_durationCampaign get_campaign_duration
rewardlistCampaign rewardlist
commitmentlistCampaign commitmentlist
contributions_countCampaign contributions_count
contributions_active_countCampaign contributions_active_count
comments_countCampaign comments_count
commitments_countCampaign commitments_count
pledges_countCampaign pledges_count
rewards_countCampaign rewards_count
updates_countCampaign updates_count
votes_countCampaign votes_count
jsonCampaign json
contributorsCampaign contributors
activityCampaign activity
user_idCampaign user_id
site_idCampaign site_id
group_idCampaign group_id
userCampaign user
siteCampaign site
groupCampaign group
Category name escaped
linkCategory link
positionCategory position
typeCategory type
sortCategory sort
orderCategory order
hiddenCategory hidden
default?Category default?
custom?Category custom?
site_idCategory site_id
siteCategory site
Comment raw escaped
htmlComment html
anonymousComment anonymous
user_idComment user_id
campaign_idComment campaign_id
userComment user
campaignComment campaign
Commitment name escaped
editable?Commitment editable?
image_urlCommitment image_url
descriptionCommitment description escaped
description_htmlCommitment description_html
maxCommitment max
visibleCommitment visible
images_enabledCommitment images_enabled
images_requiredCommitment images_required
taken?Commitment taken?
campaign_idCommitment campaign_id
site_idCommitment site_id
campaignCommitment campaign
siteCommitment site
Configuration enabled
stripe_publishable_keyConfiguration stripe_publishable_key escaped
stripe_recurringConfiguration stripe_recurring
stripe_recurring_optionalConfiguration stripe_recurring_optional
stripe_billing_fieldsConfiguration stripe_billing_fields
live?Configuration live?
paypal_adaptive?Configuration paypal_adaptive?
mangopay_adaptive?Configuration mangopay_adaptive?
nameConfiguration name escaped
linkConfiguration link
liveConfiguration live
adaptiveConfiguration adaptive
loginConfiguration login escaped
passwordConfiguration password escaped
signatureConfiguration signature escaped
appidConfiguration appid escaped
emailConfiguration email escaped
paypal_currencyConfiguration paypal_currency
paypal_emailConfiguration paypal_email escaped
client_idConfiguration client_id escaped
client_secretConfiguration client_secret escaped
access_tokenConfiguration access_token escaped
account_idConfiguration account_id escaped
bitpay_keyConfiguration bitpay_key escaped
dwolla_keyConfiguration dwolla_key escaped
dwolla_secretConfiguration dwolla_secret escaped
dwolla_idConfiguration dwolla_id escaped
stripe_secret_keyConfiguration stripe_secret_key escaped
stripe_client_idConfiguration stripe_client_id escaped
stripe_currencyConfiguration stripe_currency escaped
razorpay_api_keyConfiguration razorpay_api_key escaped
site_idConfiguration site_id
siteConfiguration site
Contact name escaped
emailContact email escaped
subjectContact subject escaped
messageContact message escaped
message_htmlContact message_html
Contribution cost_amount
cost_nameContribution cost_name escaped
is_anonymous?Contribution is_anonymous?
custom_fieldsContribution custom_fields
payment_methodContribution payment_method
amountContribution amount
totalContribution total
currencyContribution currency
campaign_receivesContribution campaign_receives
show_shipping_linkContribution show_shipping_link
acceptContribution accept
contributor_pays_feesContribution contributor_pays_fees
anonymousContribution anonymous
confirmedContribution confirmed
refundedContribution refunded
deletedContribution deleted
capturedContribution captured
live_paymentContribution live_payment
payment_tokenContribution payment_token
payment_typeContribution payment_type
transaction_idContribution transaction_id
ipContribution ip
emailContribution email escaped
nameContribution name escaped
locationContribution location
manualContribution manual
name_overrideContribution name_override escaped
captureContribution capture
min_amountContribution min_amount
max_amountContribution max_amount
platform_amountContribution platform_amount
payment_amountContribution payment_amount
fees_amountContribution fees_amount
full_amountContribution full_amount
descriptionContribution description escaped
jsonContribution json
reward_idContribution reward_id
site_idContribution site_id
user_idContribution user_id
campaign_idContribution campaign_id
cost_idContribution cost_id
fee_idContribution fee_id
rewardContribution reward
siteContribution site
userContribution user
campaignContribution campaign
costContribution cost
feeContribution fee
Conversation listener
deletorsConversation deletors
subjectConversation subject escaped
get_listenerConversation get_listener
other_userConversation other_user
activeConversation active
user_idConversation user_id
site_idConversation site_id
userConversation user
siteConversation site
Cookie set(key, value)
Cost amount
nameCost name escaped
percentageCost percentage
site_idCost site_id
siteCost site
Fee name escaped
percentageFee percentage
site_idFee site_id
siteFee site
Flash info
errorFlash error
Group link
imageGroup image
nameGroup name escaped
bio_htmlGroup bio_html
urlGroup url
bioGroup bio escaped
hiddenGroup hidden
member?Group member?
total_amountGroup total_amount
site_idGroup site_id
user_idGroup user_id
siteGroup site
userGroup user
usersGroup users
Image name escaped
typeImage type escaped
urlImage url
thumb_urlImage thumb_url
timestampImage timestamp
file_sizeImage file_size
image?Image image?
extensionImage extension
thumbImage thumb
keyImage key
thumb_keyImage thumb_key
site_idImage site_id
campaign_idImage campaign_id
siteImage site
campaignImage campaign
Layout full_title
titleLayout title
subtitleLayout subtitle
taglineLayout tagline
body_classLayout body_class
metaLayout meta
templateLayout template
defaultLayout default
dialogLayout dialog
pdfLayout pdf
Membership user_id
site_idMembership site_id
group_idMembership group_id
userMembership user
siteMembership site
groupMembership group
Message content_html
contentMessage content escaped
urlMessage url
get_userMessage get_user
user_idMessage user_id
conversation_idMessage conversation_id
userMessage user
conversationMessage conversation
Model id
model_nameModel model_name
errorsModel errors
created_atModel created_at
updated_atModel updated_at
new_record?Model new_record?
persisted?Model persisted?
valid?Model valid?
escape inputModel escape(input) escaped
encode inputModel encode(input)
zonify timeModel zonify(time)
scoped nameModel scoped(name)
Page html
hiddenPage hidden
linkPage link
titlePage title
meta_descriptionPage meta_description
subtitlePage subtitle
rawPage raw escaped
typePage type
homepagePage homepage
termspagePage termspage
site_idPage site_id
sitePage site
Paginate per_page
pagePaginate page
countPaginate count
arrowsPaginate arrows
numbersPaginate numbers
defaultPaginate default
Pledge email escaped
namePledge name escaped
commentPledge comment escaped
comment_htmlPledge comment_html
anonymousPledge anonymous
commitment_idPledge commitment_id
site_idPledge site_id
campaign_idPledge campaign_id
user_idPledge user_id
commitmentPledge commitment
sitePledge site
campaignPledge campaign
userPledge user
Query first
lastQuery last
allQuery all
paginate(options = params || {})Query paginate(options = (params || {}))
where optionsQuery where(options)
order optionsQuery order(options)
limit xQuery limit(x)
countQuery count
Reminder user_id
campaign_idReminder campaign_id
userReminder user
campaignReminder campaign
Request url
fullpathRequest fullpath
absolutepathRequest absolutepath
refererRequest referer
xhr?Request xhr?
Reward max
descriptionReward description escaped
description_htmlReward description_html
editable?Reward editable?
images_requiredReward images_required
amountReward amount
image_urlReward image_url
visibleReward visible
images_enabledReward images_enabled
taken?Reward taken?
siteReward site
jsonReward json
campaign_idReward campaign_id
campaignReward campaign
Session set
Settings countries
Site costs_enabled
costs_requiredSite costs_required
fees_enabledSite fees_enabled
fees_requiredSite fees_required
currency_displaySite currency_display
currency_display_rightSite currency_display_right
display_actual_currencySite display_actual_currency
langSite lang
nameSite name escaped
campaign_locationSite campaign_location
domainSite domain
default_categoriesSite default_categories
groups_enabledSite groups_enabled
groups_joinableSite groups_joinable
groups_editableSite groups_editable
random_limitSite random_limit
random_on_emptySite random_on_empty
category_optionsSite category_options
classesSite classes
titleSite title
title_separatorSite title_separator
tagline_titleSite tagline_title
tagline_title_homepageSite tagline_title_homepage
tagline_subtitleSite tagline_subtitle
logoSite logo
secure_logoSite secure_logo
meta_descriptionSite meta_description
headSite head
librariesSite libraries
cssSite css
hide_powered_bySite hide_powered_by
languagesSite languages
sidebarSite sidebar
navigationSite navigation
scriptsSite scripts
sectionsSite sections
page_idSite page_id
modeSite mode
disable_messagesSite disable_messages
jsonSite json
homepageSite homepage
extra_scriptsSite extra_scripts
extra_cssSite extra_css
curdelSite curdel
fraction_symbolSite fraction_symbol
timezoneSite timezone
rewards_enabledSite rewards_enabled
rewards_requiredSite rewards_required
reward_images_enabledSite reward_images_enabled
reward_images_requiredSite reward_images_required
max_rewardsSite max_rewards
commitments_enabledSite commitments_enabled
commitments_requiredSite commitments_required
commitment_images_enabledSite commitment_images_enabled
commitment_images_requiredSite commitment_images_required
max_commitmentsSite max_commitments
protocolSite protocol
googleSite google
hide_user_bioSite hide_user_bio
tabs_visibleSite tabs_visible
updates_in_aboutSite updates_in_about
contribution_amountSite contribution_amount
login_to_contributeSite login_to_contribute
anonymous_contributionsSite anonymous_contributions
gateway_feesSite gateway_fees
platform_feeSite platform_fee
share_buttonsSite share_buttons
share_button_textSite share_button_text
share_button_styleSite share_button_style
user_fieldsSite user_fields
approval_fieldsSite approval_fields
campaign_fieldsSite campaign_fields
contribution_fieldsSite contribution_fields
contact_fieldsSite contact_fields
vote_fieldsSite vote_fields
video_typesSite video_types
video_type_hintSite video_type_hint
min_amountSite min_amount
max_amountSite max_amount
fixed_amountSite fixed_amount
fixed_amount_enabledSite fixed_amount_enabled
fixed_amount_user_decideSite fixed_amount_user_decide
min_goalSite min_goal
max_goalSite max_goal
durationSite duration
badges_per_rowSite badges_per_row
default_per_pageSite default_per_page
has_sidebar?Site has_sidebar?
badge_styleSite badge_style
themeSite theme
theme_neueSite theme_neue
tab_positionSite tab_position
disable_responsiveSite disable_responsive
faviconSite favicon
mobileSite mobile
storage_usedSite storage_used
storage_campaignSite storage_campaign
storage_siteSite storage_site
termspageSite termspage
facebook_loginSite facebook_login
google_loginSite google_login
configurationSite configuration
hide_campaign_contributionsSite hide_campaign_contributions
subdomainSite subdomain
owndomainSite owndomain
ssl_enabledSite ssl_enabled
redirect_urlSite redirect_url
redirect_allSite redirect_all
linkSite link
default_languageSite default_language
tierSite tier
domain_settingsSite domain_settings
api_keySite api_key
captchaSite captcha
disable_captchaSite disable_captcha
default_avatarSite default_avatar
default_campaign_imageSite default_campaign_image
editorSite editor
blog_adminSite blog_admin
blog_imageSite blog_image
campaign_durationSite campaign_duration
campaign_strategySite campaign_strategy
campaign_strategiesSite campaign_strategies
voting_enabled?Site voting_enabled?
default_currencySite default_currency
footerSite footer
contribution_confirmationSite contribution_confirmation
contributor_pays_feesSite contributor_pays_fees
campaigns_always_editableSite campaigns_always_editable
campaigns_auto_visibleSite campaigns_auto_visible
passwordSite password
encrypted_passwordSite encrypted_password
password_enabledSite password_enabled
campaign_login_requiredSite campaign_login_required
email_confirmationSite email_confirmation
non_profitSite non_profit
ads_countSite ads_count
users_countSite users_count
campaigns_countSite campaigns_count
groups_countSite groups_count
emailsSite emails
signatureSite signature
disabled_emailsSite disabled_emails
bcc_emailsSite bcc_emails
greetingSite greeting
translationsSite translations
toSite to
facebookSite facebook escaped
facebook_secretSite facebook_secret escaped
twitterSite twitter escaped
google_client_idSite google_client_id escaped
google_client_secretSite google_client_secret escaped
reward_imagesSite reward_images
commitment_imagesSite commitment_images
get_configurationSite get_configuration
get_emailSite get_email
root_domainSite root_domain
live_domainSite live_domain
markdown?Site markdown?
facebook_keySite facebook_key
optionsSite options
badge_translationsSite badge_translations
nowSite now
account_idSite account_id
accountSite account
Stats days_unique
week_uniqueStats week_unique
month_uniqueStats month_unique
unique_totalStats unique_total
stats_daysStats stats_days
stats_weekStats stats_week
stats_monthStats stats_month
stats_totalStats stats_total
contributions_dayStats contributions_day
contributions_weekStats contributions_week
contributions_monthStats contributions_month
contributions_totalStats contributions_total
votes_dayStats votes_day
votes_weekStats votes_week
votes_monthStats votes_month
votes_totalStats votes_total
statsStats stats
contributionsStats contributions
votesStats votes
modelStats model
Update raw escaped
htmlUpdate html
publishedUpdate published
emails_sentUpdate emails_sent
user_idUpdate user_id
campaign_idUpdate campaign_id
userUpdate user
campaignUpdate campaign
User name escaped
authorUser author
blog_adminUser blog_admin
blogger?User blogger?
custom_fieldsUser custom_fields
avatarUser avatar
avatar_typeUser avatar_type
avatar_uploadUser avatar_upload
gravatar_urlUser gravatar_url
linkUser link
emailUser email escaped
passwordUser password escaped
password_confirmationUser password_confirmation escaped
pwhsUser pwhs
bioUser bio escaped
bio_htmlUser bio_html
websiteUser website escaped
addressUser address escaped
payment_infoUser payment_info escaped
update_emailsUser update_emails
reset_tokenUser reset_token
tokenUser token
reset_atUser reset_at
deletedUser deleted
approvedUser approved
incompleteUser incomplete
confirmation_tokenUser confirmation_token
pending_confirmationUser pending_confirmation
facebook_avatarUser facebook_avatar
reset_urlUser reset_url
confirmation_urlUser confirmation_url
campaigner?User campaigner?
jsonUser json
authenticationsUser authentications
groupsUser groups
site_idUser site_id
siteUser site
Vote email escaped
nameVote name escaped
commentVote comment escaped
comment_htmlVote comment_html
anonymousVote anonymous
site_idVote site_id
user_idVote user_id
campaign_idVote campaign_id
siteVote site
userVote user
campaignVote campaign