Search engines

When someone searches for your site, or shares a link to it in a chat or on a social site, they see a title, a short description and sometimes a picture. This chapter shows how to set those for each page, how to keep a page out of search results, and how to get a new site found.

Much of this happens without you. Every public page tells search engines its address, its language, a picture for link previews and whether it should be listed. The site also publishes a sitemap and a robots.txt. What an editor adds is good wording.

Set a page's title, description and share image

  1. Open the page from Content → Pages (or Content → Posts).
  2. Click an empty part of the preview, outside every block. The page's own fields open on the right.
  3. Fill in the fields below.
  4. Press Save draft, then Publish.
  • Page title is the title in search results and the browser tab. Left empty, the page's name is used. The site wraps it in its title pattern, so “About” shows as “About | Your site”.
  • Meta description is the line or two under the title in search results and in a link preview. About 155 characters shows in full. Without one, search engines choose some text from the page.
  • Social image URL is the picture shown when the page is shared. A size of 1200 × 630 pixels works everywhere. To get the address, open Media, click the image and copy the address shown under its details.
  • Search engines is Index, the default, or Hide. Hide asks search engines to leave the page out of their results and keeps it out of the sitemap.

What fills in by itself

  • Every page names its own address as the one to list, called its canonical address. The same page reached with extra bits on the end is never counted twice.
  • The page's language comes from the site's locale in site.config.ts.
  • Link previews carry the site's name, the kind of page (an article for a post, a product for a product, a website page for the rest) and a large-picture card when there is an image.
  • A post without its own description or image uses its excerpt and cover, and says when it was published.
  • A product uses the start of its description and its first picture.
  • The page for an item of a collection uses the collection's first text field and first image field.

Pages that are never listed

These ask search engines to stay away, whatever their settings say:

  • the cart, checkout, account and sign-in pages;
  • pages whose Access is anything but Everyone, and the pages under them (Pages and blocks);
  • private links, such as questionnaire, ticket, order and booking links;
  • the thank-you pages after a form or a poll;
  • previews in the editor.

Get your site found

The sitemap, at /sitemap.xml, lists every published page that anyone may open, with when it last changed. It covers pages, posts, products, event pages and the pages of collection items. Hidden and locked pages stay out. It updates by itself as you publish.

/robots.txt tells crawlers to keep out of the admin, the API, previews, the cart, checkout and account pages, and points them to the sitemap.

To make a new site show up sooner, tell the two big search engines about it:

  1. Add the site to Google Search Console and to Bing Webmaster Tools. Each asks you to prove the site is yours.
  2. Choose the option that verifies with a meta tag, and copy the tag they give you.
  3. In the admin, open Settings → Site. In the Page markup card, paste the tag into In <head> and save. That box is raw HTML written to every page, so paste only what the service gave you.
  4. Go back to each service and press its verify button.
  5. Submit your sitemap in each, using your own address: https://example.com/sitemap.xml.

Site-wide defaults

The site also keeps four defaults:

  • a title pattern, such as %s | Your site, where %s stands for the page title;
  • a title for a page that has none;
  • a description for a page that has none;
  • a share image for a page that has none.

A new site starts with the pattern set to its name and the rest empty. There is no settings screen for these yet. A developer can change them with a PUT request to /api/admin/globals/seo while signed in as an admin, or you can ask an assistant connected through AI assistants (MCP) to set the seo global.

Keep a staging copy out of search results

A test or staging copy of the site should not appear in search results next to the real one. Add this line to the copy's .env file and restart it:

.env
CMS_NOINDEX=true

Every page then asks crawlers to stay away, and robots.txt turns them all back and names no sitemap. Run it on a server shows how a site reads its .env file.