Skip to content
WP Visibility

Everyday SEO

Set Title and Description Templates

Nine templates on the settings screen build every title and description; any post, page or term can override its own from the editor, and an empty field means the template.

Updated September 22, 2026

Docs

Open WP Visibility → Settings. The General section holds the Title separator and the two homepage fields; the Titles & descriptions section holds one template per page type. Variables are lowercase names in curly braces, {title} {sep} {site} being the shipped post template. To change one post, open the WP Visibility sidebar in the editor and type into Search title or Search description; leave either empty to fall back to the template.

Where the settings are

The settings page is one searchable screen, not tabs. Type “template” in the search box to filter to the section.

General

Field What it does
Title separator The character {sep} renders. Presets: en dash (the default), em dash, pipe, bullet, middle dot, right guillemet, slash, or Custom with any character you type.
Homepage title When filled in, this wins over the homepage title template.
Homepage meta description When filled in, this wins over the homepage description template.

The nine templates

Template Default Applies to
Homepage title template {site} {sep} {tagline} The front page, unless Homepage title is set
Post & page title template {title} {sep} {site} Every single post, page and custom post type entry
Archive title template {term_title} {sep} {site} Category, tag and custom taxonomy archives, date archives, post type archives
Author archive title template {author} {sep} {site} Author pages
Search results title template {search_query} {sep} {site} Internal search results
404 page title template {notfound} {sep} {site} The not-found page
Homepage description template {tagline} The front page, unless Homepage meta description is set
Post & page description template {excerpt} Single entries with no description of their own
Archive description template {term_description} Term archives

Two things are not on that list on purpose. There is no per post type template: posts, pages and products share one template, and the archive template covers taxonomy, date and post type archives together. To tell types apart, use {post_type_singular} or {post_type_plural} inside the shared template, or override individual entries. And search results, 404, date and author pages have no description template, so they print no description tag.

On page 2 and later of any archive the separator and “Page 2” are appended for you. No variable is needed for that.

Every variable

Names are case-insensitive. An unknown name renders as nothing, and when a variable renders empty, such as {tagline} on a site with no tagline, the leftover separator is removed with it.

Variable Renders
{site} The site title
{tagline} The site tagline
{sep} The title separator
{title} The post or page title
{excerpt} The excerpt, or the first 160 characters of the content cut at a word, with tags, blocks and shortcodes stripped
{author} The author’s display name
{date}, {modified} Publish and modified dates in the site’s date format
{term_title} The term name on a term archive, the post type name on a post type archive, the author on an author page, the date label on a date archive
{term_description} The term description, up to 160 characters
{search_query} The visitor’s search terms
{notfound} The words “Page not found”
{page} “Page 2 of 5” on page 2 and later, otherwise nothing
{pagenumber} Just the number, on page 2 and later
{post_type_singular}, {post_type_plural} The post type’s labels
{category} The first category
{custom_field:KEY} The post meta value stored under KEY
{currentyear}, {currentdate} Today’s year, and today’s date in the site’s format

Developers can add variables with the wpvis_template_variable filter.

Examples

On a site named Garden Notes with the slash as separator, the post “How to Prune Tomatoes” renders as:

How to Prune Tomatoes / Garden Notes

To add the year the post was last updated, change the post template to {title} {sep} {modified} {sep} {site}. To brand product pages differently without a second template, use {title} {sep} {post_type_singular} {sep} {site}, which reads “Trowel / Product / Garden Notes” on a product and “How to Prune Tomatoes / Post / Garden Notes” on a post. To pull a subtitle stored in a custom field named subtitle, use {title}: {custom_field:subtitle} {sep} {site}.

Override one post

In the block editor, click the WP Visibility icon in the top toolbar to open the sidebar. The Search appearance panel opens first with a preview and two fields, Search title and Search description. Type plain text, or use variables; a per-post value is a template too, so {title} | {currentyear} works. The preview shows the rendered result and a character meter with advisory bands of 30 to 60 for titles and 70 to 160 for descriptions. Variables the editor cannot resolve on the client render on the live page.

Leave a field empty to use the template. An empty description falls back to the excerpt, then to the content.

The classic editor shows the same two fields in a WP Visibility metabox. Values save as ordinary post meta with the post, so autosave and revisions carry them.

Categories and tags

Open a term under Posts → Categories or Tags and edit it. WP Visibility adds Search title and Search description to the edit form. Empty means the archive template and the term description. Quick edit does not show these fields.

From the command line

wp visibility settings get separator
wp visibility settings set separator "|"
wp visibility settings set title_singular "{title} {sep} {site}"
wp visibility set 123 --title="A better title" --description="A better description"

Setting keys: separator, homepage_title, homepage_description, title_home, title_singular, title_archive, title_author, title_search, title_404, desc_home, desc_singular, desc_archive.

An assistant connected through the plugin proposes the same per-post changes through the review queue; the templates themselves are site settings, changed through the settings ability or by you.