FleekSiteFLEEKSITE
On this section
Platform concepts

Sites.

A site is the unit of tenancy on FleekSite. Every request is resolved to exactly one site, and that site is handed to your templates as the site object. This page covers how a site is found and the fields you will read from it.

A site is a tenant

FleekSite is multi-tenant: one platform serves many independent sites, and a request is matched to a site by its host. The host is taken from the request and checked against three columns on the site record, in order of precedence:

  • domain: the site's primary domain, matched first.
  • cname: a custom hostname pointed at the platform, matched next.
  • alt_domains: a comma-separated list of additional hosts, matched last.

The first column to match wins, so an exact domain hit beats a cname hit, which in turn beats an alt_domains entry. Once a site is resolved, its render mode, its templates and its data all belong to that one tenant; nothing crosses between sites.

The site object

The resolved site is exposed to every template as site. It is the full site record with its keys in snake_case, plus a handful of computed aliases layered on top for convenience. Every column on the record is therefore readable as site.column_name, and the aliases below fill in the names templates most often reach for.

Site snippets you set yourself, such as reusable copy or configuration, live on a separate object rather than on site; see bits. Reading site.render_mode is rarely necessary, because the mode changes how your Liquid runs, not what it can see (render modes).

Fields you will use

Output any of these with an ordinary Liquid tag, for example {{ site.name }} or {{ site.description }}:

FieldValue
site.nameThe site's name.
site.titleThe meta title if one is set, otherwise the name.
site.descriptionThe meta description, or an empty string when unset.
site.keywordsThe meta keywords, or an empty string when unset.
site.mobile / site.phoneThe contact number. phone is an alias of mobile.
site.currencyThe currency code, defaulting to USD.
site.languageThe language code, defaulting to en.
site.dataA free-form object of extra settings, defaulting to an empty object.
site.render_modeThe site's render mode, compat or standard.

The objects reference documents site alongside page, env and the rest of the render context.

The site's address

Absolute URLs are not built from the raw request host but from the site's canonical address, exposed as env.root_url on the separate env object. It is https:// followed by the first available of the site's domain, its cname, its first alt_domains entry, or fleeksite.com as a final fallback. Building links from env.root_url rather than the request host means a site reached on an alternate host still emits canonical, absolute URLs.

When a site has a primary domain, a request arriving on another of its hosts is redirected to that domain, so env.root_url and the address bar agree. A site set up on a cname alone is served in place and never redirected.