Plug in SEO Liquid is very similar to Shopify Liquid, giving you access to lots of Liquid objects and filters to use in your SEO.
In this article
Basics
As a really simple example, let's say we want to get the name of the product.
We would use the Liquid object product.title to do this. We surround the object with %% to indicate it is an object:
Input
%% product.title %%
Output
Laughing man t-shirt
Templates can of course contain static text too. Say we want to add ' - Stock Photo T-shirts' to the end. In the template, we'll just write this text without surrounding it with %%:
Input
%% product.title %% - Stock Photo T-shirts
Output
Laughing man t-shirt - Stock Photo T-shirts
Liquid filters let us manipulate objects in lots of different ways. We add filters to an object using ||. For example, if we want to remove a 't-shirt' from the product.title we can use the remove filter:
Input
%% product.title || remove: ' t-shirt' %% - Stock Photo T-shirts
Output
Laughing man - Stock Photo T-shirts
We can add as many filters as we like, separating each with ||:
Input
%% product.title || remove: ' t-shirt' || upcase %% - Stock Photo T-shirts
Output
LAUGHING MAN - Stock Photo T-shirts
Plug in SEO Liquid vs. Shopify Liquid
Plug in SEO Liquid is very similar to Shopify Liquid, giving you full access to a wide range of objects and filters to use in your SEO.
There are a couple of differences.
Shopify Liquid | Plug in SEO Plus Liquid | |
---|---|---|
Parenthesis |
{{ product.title }} |
%% product.title %% |
Filters |
{{ product.title | append: 'Buy' }} |
%% product.title || append: 'Buy' %% |
Filter parameters |
{{ product.title | append: 'Buy' }} {{ product.title | truncate: 100 }} single quotes can be left out for numbers / truthy |
%% product.title || append: 'Buy' %% %% product.title || truncate: '100' %% single quotes are required for every parameter, including numbers / truthy |
Whitespace |
{{ product.title|append: 'Buy' | truncate:100}} tolerant of whitespace |
%% product.title || append: 'Buy' || truncate: '100' %% whitespace must be exactly one space around parenthesis, filters, and parameters |
Filters | All Array, HTML, Math, Money, String, and Additional filters are supported where there are zero or one parameter | |
Objects | All Liquid objects where the reference is between 0-3 levels deep like object, object.variable, object.variable1.variable2, and object.variable1.variable2.variable3 |
Additional filters
We've added these filters.
prepend_not_empty
Prepends a string only if the object is not empty. If the object is empty, the string will not be prepended.
Input
%% current_tags || join: ', ' || prepend_not_empty: 'Buy ' %% Stock Photo Tees
Output
current_tags is empty
Stock Photo Tees
current_tags is not empty
Buy black, blue Stock Photo Tees
append_not_empty
Appends a string only if the object is not empty. If the object is empty, the string will not be appended.
Input
%% current_tags || join: ', ' || append_not_empty: ' t-shirts from' %% Stock Photo Tees
Output
current_tags is empty
Stock Photo Tees
current_tags is not empty
black, blue t-shirts from Stock Photo Tees
take
Takes the first X items from an array.
Input
%% collection.all_tags || take: '3' || join: ', ' %%
Output
black, blue, green
Where you can use Liquid
- Title and Description templates for Collections / Products / Pages / Blogs / Articles (this also lets you accomplish things like unique titles for collections filtered by tags/types/vendors that isn't possible without templating)
- Default Title and Description
- Homepage, Search, 404 special pages Title and Description
- Titles and Descriptions manually entered in your Shopify admin 'Edit SEO' section
- Bulk editing of Titles and Descriptions in your Shopify admin
- Title Appender
Comments
0 comments
Please sign in to leave a comment.