Pages are the backbone of any website. Pages in Siteglide are Liquid files in the codebase and rendered to HTML before the server delivers that Page to the browser. Liquid files can also include HTML. This allows the server to deliver some content dynamically, or some HTML statically.
When some content is very similar on multiple Pages, we recommend using Page Templates to reduce repetitive code, save time and make maintenance easier.
Standard Pages are created by you and can include any kind of Liquid or HTML code.
Some Pages are generated dynamically by the System:
Detail Pages are dynamically generated by the system to output database items from WebApps and Modules front end.
System Pages are similar to ordinary Pages, but are accessed in a different area in CLI and Admin to acknowledge their special functional role in the site, for example password reset pages.
Learn more about Pages on platformOS here: https://documentation.platformos.com/developer-guide/pages/pages
When you first click to create or edit a Page, you’ll begin within the ‘Details’ tab.
Using the 'Details' tab you can manage and edit key details about the current Page, such as:
Name your page - Name of the Page displayed in Admin and front-end
Page URL - URL of the page displayed in a browser
Set as your Homepage - Make the current page display on load of your root domain
Visible to site search - Enable or disable this to be searched from within your site
Visible to search engines - Make the page discoverable to search engines such as Google
Enable this page - Enable or disable the page. When disabled the page cannot be found front-end
Page Template - See for more information
SEO and Open Graph Settings - Add data to the page that will display in search engines and when sharing links. If sharing on Twitter, you'll need to select a Twitter Card Type along with the other fields provided for this to work as expected. For more information on Twitter Card Types, see
Secure Zones - Move the page into one or more Secure Zone to lock the content behind a wall
When the Admin builds a Page, it adds important metadata using the YAML language.
It also includes Liquid code, hidden from Admin, which controls automatic metadata output and Secure Zones if relevant.
If you add Pages locally, you'll need to add this data.-
Pages must be stored within the following file path of your project: marketplace_builder/views/pages/
and must be .liquid
file type.
This is an example Page generated by Siteglide. Below, we'll list available YML parameters, and body content.
The YML section of the page is marked by triple dashes above and below. Everything below is the main body of the page, in liquid language.
YML is very strict about spaces and tabs- always use two spaces instead of a tab in YML.
If you wish to use Liquid in the redirect to line, you can make the line multiline: https://documentation.platformos.com/use-cases/using-liquid-markup-yaml#using-liquid-markup-in-yaml
Slug
- This is the page URL. Must be unique - Siteglide Admin handles this when editing Pages there, but we obviously have little control over that here, so it's up to the user to maintain for now (we can add validation later). Shouldn't ever be '/', as that's reserved by homepage. If you need to set it as homepage you'll have to do via UI for now. (required)layout_name
- Reference your Template here. Stored at -> marketplace_builder/views/layouts/templates/1.liquid
metadata
name
- Page name shown in UI (required) Note: This must be a string
file_type
- Set as 'page' (required)
last_edit
- timestamp of last edit - shown in UI
meta_title
- Used in page title
meta_desc
- Used as meta description
og_title
- Used in page data for sharing link
og_desc
- Used in page data for sharing link
og_type
- Defines page content type for sharing link
twitter_type
- Defines page content type for twitter sharing link
enabled
- If the page is visible on the front-end
use_siteglide_js
- Set as 'false' to supress the siteglide.js file from being included in your page. Note: This will stop forms from submitting, only turn this off on pages that do not include forms. Currently this does not work for the homepage of your site
physical_file_path
- Files should be stored in a location relative to their slug. If your slug is /services/cleaning, then the physical_file_path would be views/pages/services/cleaning.liquid - note changing this line can have unexpected results. If you want to move a file, you can just move the file and delete this line. Re-syncing or deploying should change the physical file path automatically.
redirect_to
- The slug to redirect to, if it needs it. If it's homepage, you need to redirect to '/'
redirect_code
- Set as '301' if there's a redirect
searchable
- Set as 'true' so it shows in search results
layout
- Adds the Page Template e.g. set to 'templates/1' for the template with an ID of 1. Or to leave blank for API Endpoints, set to empty string ''.
Body must include the constants snippet shown in example for features like SEO and Secure Zones to work.
Constants makes certain variables available in the Page and passes others up to the Page Template e.g. SEO. It should sit at the very top of most pages. If you are confident a Page doesn't need it e.g. an API Endpoint, you can skip it to improve performance.
You can use your own Liquid to implement logic based off the logged in User's Secure Zones, but to copy the pattern Admin creates for consistency you can do this:
Replace the "secure_zones_string" with the ID of your relevant Secure Zone from Admin.