Liquid reference The Liquid reference documents the Liquid tags, filters, and objects that you can use to build Shopify themes. > Liquid is a template language created by Shopify. It's available as an [open source project](https://shopify.github.io/liquid/) on GitHub, and is used by many different software projects and companies. This reference documents the Liquid tags, filters, and objects that you can use to build [Shopify Themes](/themes). ## What is a template language? A template language allows you to create a single template to host static content, and dynamically insert information depending on where the template is rendered. For example, you can create a product template that hosts all of your standard product attributes, such as the product image, title, and price. That template can then dynamically render those attributes with the appropriate content, depending on the current product being viewed. ## Liquid basics Liquid is used to dynamically output objects and their properties. You can further modify that output by creating logic with tags, or directly altering it with a filter. Objects and object properties are output using one of six basic data types. Liquid also includes basic logical and comparison operators for use with tags. ## Referencing objects Liquid objects represent variables that you can use to build your theme. Object types include, but aren't limited to: - Store resources, such as a collection or product and its properties - Standard content that is used to power Shopify themes, such as `content_for_header` - Functional elements that can be used to build interactivity, such as `paginate` and `search` Objects might represent a single data point, or contain multiple properties. Some products might represent a related object, such as a product in a collection. #### Creating variables You can also create your own variables using [variable tags](/docs/api/liquid/tags/variable-tags). Variables are treated like objects syntactically. #### Scope Some objects can be accessed globally, and some are available only in certain contexts. Refer to the specific object reference to find its access scope. > **Syntax Note** > Double curly brace delimiters denote an output. > `{{ }}` ## Modifying output with filters Liquid filters are used to modify the output of variables and objects. To apply filters to an output, add the filter and any filter parameters within the output's curly brace delimiters, preceded by a pipe character. Multiple filters can be used on one output. They’re parsed from left to right. > **Syntax Note** > Filters are placed within an output tag and denoted by a pipe character. > `{{ | }}` ## Defining logic with tags Liquid tags are used to define logic that tells templates what to do. Text within tag delimiters doesn’t produce visible output when the webpage is rendered. > **Syntax Note** > Curly brace percentage delimiters denote logic and control flow. > `{% %}` ## Variations of Liquid The variation of Liquid in this reference extends the open-source version of Liquid for use with [Shopify themes](/themes). It includes tags, filters, and objects that can be used to render objects specific to Shopify stores and storefront functionality. Shopify also uses slightly different versions of Liquid to render dynamic content for the following features. These variations aren’t included in this reference. ## More resources - [Basics](/docs/api/liquid/basics.txt): Learn the basics of Liquid - [Filters](/docs/api/liquid/filters.txt): Learn how to use filters to modify Liquid output - [Tags](/docs/api/liquid/tags.txt): Learn how to use tags to define logic that tells templates what to do - [Objects](/docs/api/liquid/objects.txt): Learn about the objects that you can use in Liquid