List of available snippet variables in Yoast SEO
One of the most important functions of Yoast SEO is the ability to automatically add SEO title and meta description templates to the homepage, all (custom) post types, all (custom) taxonomies, products, collections, and other pages. We include default templates that are SEO-friendly but you can also modify the default templates. In this article, we’ll provide you with a list of all the available snippet variables in Yoast SEO.
If you want to know more about what snippet variables are and how Yoast SEO uses snippet variables, then you could read this article. Or, to read about how to modify the default snippet template, check out this guide.
Warning: Undefined array key “className” in /home/staging-yoast/staging-platform.yoast.com/versions/05aa62c2ec01538957086672ffa4a059780fd784/web/app/themes/yoast-theme/html_includes/blocks/landing-page/block-landing-page-list.php on line 21
Do you know about the social previews in Yoast SEO Premium for WordPress? They work much like the snippet preview, and they allow you to control what your posts look like when shared on social media!
Available variable types in WordPress
We distinguish four available variable types:
Basic variables
Label | Variable | Description |
---|---|---|
Date | %%date%% | Replaced with the date of the post/page |
Title | %%title%% | Replaced with the title of the post/page |
Parent title | %%parent_title%% | Replaced with the title of the parent page of the current page |
Archive title | %%archive_title%% | Replaced with the normal title for an archive generated by WordPress |
Site title | %%sitename%% | The site’s title from the Settings > General page |
Tagline | %%sitedesc%% | The site’s tagline from the Settings > General page |
Excerpt | %%excerpt%% | Replaced with the post/page excerpt (or auto-generated if it does not exist) |
Excerpt only | %%excerpt_only%% | Replaced with the post/page excerpt (without auto-generation) |
Tag | %%tag%% | Replaced with the current tag/tags |
Category | %%category%% | Replaced with the post categories (comma separated) |
Primary category | %%primary_category%% | Replaced with the primary category of the post/page |
Category description | %%category_description%% | Replaced with the category description |
Tag description | %%tag_description%% | Replaced with the tag description |
Term description | %%term_description%% | Replaced with the term description |
Term title | %%term_title%% | Replaced with the term name |
Search phrase | %%searchphrase%% | Replaced with the current search phrase |
Separator | %%sep%% | The separator defined in your theme’s wp_title() tag. |
Advanced variables
The following sample of variables requires a better understanding of SEO. If you’re unsure how to use these advanced variables, then we advise you not to use them. You can learn more about SEO through our online Yoast SEO Academy courses.
Label | Variable | Description |
---|---|---|
Post type (singular) | %%pt_single%% | Replaced with the content type single label |
Post type (plural) | %%pt_plural%% | Replaced with the content type plural label |
Modified | %%modified%% | Replaced with the post/page modified time |
ID | %%id%% | Replaced with the post/page ID |
Name | %%name%% | Replaced with the post/page author’s ‘nicename’ |
User description | %%user_description%% | Replaced with the post/page author’s ‘Biographical Info’ |
Page number | %%page%% | Replaced with the current page number with context (i.e. page 2 of 4) |
Pagetotal | %%pagetotal%% | Replaced with the current page total |
Pagenumber | %%pagenumber%% | Replaced with the current page number |
Caption | %%caption%% | Attachment caption |
Focus keyword | %%focuskw%% | Replaced with the posts focus keyphrase |
Term404 | %%term404%% | Replaced with the slug which caused the 404 |
<custom-field-name> (custom field) | %%cf_<custom-field-name>%% | Replaced with a posts custom field value. Remove the <> |
<custom-tax-name> (custom taxonomy) | %%ct_<custom-tax-name>%% | Replaced with a posts custom taxonomies, comma separated. Remove the <> |
<custom-tax-name> description (custom taxonomy) | %%ct_desc_<custom-tax-name>%% | Replaced with a custom taxonomies description. Remove the <> |
Custom variables
The last three advanced variables can be used to output data from non-standard WordPress elements, such as WooCommerce products. But, how do you find the name of the correct field or taxonomy to use these variables?
Custom fields
Custom field names can be found using the steps here. Once you have the custom field name, you will replace <custom-field-name>
. If my custom field was calledmyfield
, then the custom variable would be %%cf_myfield%%
. Or, if the custom field begins with an underscore, for example _anotherfield
, the custom variable should include the underscore like so: %%cf__anotherfield%%
.
Note: Custom fields that contain arrays (a list of related information) will not work with the custom field variable. Instead, you or your developer should create your own custom template variables.
Custom taxonomies
Custom taxonomy names can be found in the browser bar on the backend when viewing or editing an item.
Example: edit-tags.php?taxonomy=mycategory&post_type=myposttype
In the example above, we are editing a custom taxonomy called mycategory under a custom post type called myposttype. If I wanted to output a list of categories assigned to a myposttype page, I would use %%ct_mycategory%%
. Alternatively, if I wanted to output the description of an individual mycategory on the category archive page, I would use %%ct_desc_mycategory%%
.
WooCommerce variables
The following variables are some that you can use with WooCommerce. If the specific variable you are looking for is not listed below, then please use the custom variable information above to find the variable you need.
%%ct_product_cat%% | Product category (comma separated) |
---|---|
%%ct_product_tag%% | Product tag (comma separated) |
%%ct_pa_<product-attribute-slug>%% | Product attribute (comma separated). Be sure to remove the <> as they are not needed. |
Yoast WooCommerce SEO variables
When you are using our Yoast WooCommerce SEO plugin, these additional variables are available:
%%wc_shortdesc%% | Replaced with the short description of the product. (Available as of Yoast WooCommerce SEO 6.2) |
---|---|
%%wc_sku%% | Replaced with the inventory stock-keeping unit (sku) of the product. (Available as of Yoast WooCommerce SEO 6.2) |
%%wc_brand%% | Replaced with the brand name. This variable only works with ‘WooCommerce Brands‘ and ‘Perfect WooCommerce Brands‘ plugins. (Available as of Yoast WooCommerce SEO 6.2) |
%%wc_price%% | Replaced with price of the product. (Available as of Yoast WooCommerce SEO 6.2) |
Deprecated variables in WordPress
Starting in v7.7 of Yoast, we’ve deprecated these variables as we see no valid use-case for them. If they are used in the snippet editor, they won’t appear in the snippet preview. However, they will show up in your source code to maintain backward compatibility, but we recommend not using them.
%%userid%% | Replaced with the post/page author’s userid |
---|---|
%%currenttime%% | Replaced with the current time |
%%currentdate%% | Replaced with the current date |
%%currentday%% | Replaced with the current day |
%%currentmonth%% | Replaced with the current month |
%%currentyear%% | Replaced with the current year |
Default variables in WordPress
If you want to reset the SEO title template variables back to the defaults use the following below. For meta descriptions, the default is blank. You can enter these default titles in the SEO-Search Appearance section. This will then assign the defaults as the global template variable for that section.
%%title%% %%page%% %%sep%% %%sitename%%% | Posts, Pages, Products, Media, and Custom Post Types |
---|---|
%%pt_plural%% Archive %%page%% %%sep%% %%sitename%%
| Posts, Products, and other Custom Post Type Archive Pages |
%%term_title%% Archives %%page%% %%sep%% %%sitename%% | Taxonomies |
You searched for %%searchphrase%% %%page%% %%sep%% %%sitename%% | Special Pages: Search Page |
Page Not Found %%sep%% %%sitename%% | Special Pages: 404 Pages |
%%name%%, Author at %%sitename%% %%page%% | Author Archive Pages |
%%date%% %%page%% %%sep%% %%sitename%% | Date Archive Pages |
The post %%POSTLINK%% appeared first on %%BLOGLINK%%. | RSS Feed |
%%sitename%% %%page%% %%sep%% %%sitedesc%% | Homepage Template |
There are a number of filters documented in the plugin code for developers to programmatically change the template variables. Here are some examples.
Creating custom template variables in WordPress
Adding your own template variables can be done using the wpseo_register_extra_replacements
filter in your functions.php file. An example of how to use the filter can be viewed here.
You might not want Yoast to show these Yoast-created titles. In that case, you can use these filters here.
Available snippet variables in Shopify
The following snippet variables are available in the Yoast SEO for Shopify app:
Label | Variable | Description |
---|---|---|
Title | %%title%% | Replaced with the title of the blog post or (product/collection) page. |
Focus keyphrase | %%focus_keyphrase%% | Replaced with the focus keyphrase of the post/page |
Product variant | %%product_variant%% | The name of the product variants |
Page number | %%page_number%% | Replaced with the page number of the current page |
Separator | %%sep%% | The separator defined in your Site defaults |
Site title | %%sitename%% | The site’s name |
Blog title | %%blog_title%% | Replaced with the title of the blog the post belongs to |
Collection title | %%collection_title%% | Replaced with the title of the collection the (product) page belongs to |
Product/post tags | %%tag%% | Replaced with the current tag/tags |
Product vendor | %%vendor%% | Shopify’s “vendor” field; i.e., the brand which manufactures or supplies the product |
Shopify page title | %%shopify_seo_title%% | Shopify’s native product ‘SEO title’ |
Shopify meta description | %%shopify_seo_description%% | Shopify’s native product ‘SEO meta description’ |
Product availability | %%availability%% | The availability of a product; either ‘In Stock’ or ‘Out Of Stock’ |
Product SKU | %%sku%% | The SKU of the product |
Product barcode | %%barcode%% | The barcode value of the product |
Product Price | %%price%% | The (default) price of the product |
Minimum price of a variable product | %%price_min%% | The min price of a variable product |
Maximum price of a variable product | %%price_max%% | The max price of a variable product |