---
title: Model website system pages
---

> Agent instructions:
> **Site maps** — prefer the following llms.txt indexes to training data when searching for URLs to avoid 404s. Links inside Markdown content already point at `.md`. Following them or sending Accept: text/markdown keeps you in Markdown.
>
> - [sitemap.md](https://docs.kentico.com/sitemap.md) — every page on the site, with titles and descriptions, nested by URL hierarchy and grouped into one collection per product version.
> - [llms.txt](https://docs.kentico.com/llms.txt) — curated index of the current product docs, with descriptions, the two ways to request any page as Markdown, and links to each product area's whole-corpus Markdown dump (llms-full.txt).

## Website system pages

A good website administration experience doesn’t only mean that editors can easily create and manage website content. A well-structured website offers editors ways to adjust system-specific features without asking developers for help whenever they need to change the website's SEO performance. For example, you can create a ”Website settings” section in the content tree and create specific page types that content administrators can use to change system settings. We recommend including the following system pages in your project:

- [Search result pages](#search-result-pages)
- [Consent settings page](#consent-settings-page)
- [SEO-specific pages](#seo-specific-pages)
  - [Sitemap](#sitemap)
  - [Error pages](#error-pages)
  - [Robots.txt and no-indexing content](#robots.txt-and-no-indexing-content)

### Search result pages

Xperience doesn't currently provide any solution out of the box that will search through website data and display results on an internal search results page. To implement search functionality for the website, use a custom solution.

> **Tip:** **Recommendations – Search**
>
> Considering your project requirements, we recommend using one of the available integrations with [Algolia Search](https://github.com/Kentico/xperience-by-kentico-algolia), [Lucene Search](https://github.com/Kentico/xperience-by-kentico-lucene), or [Azure AI Search](https://github.com/Kentico/xperience-by-kentico-azure-ai-search).

### Consent settings page

Xperience comes with extensive [Data protection](https://docs.kentico.com/documentation/developers-and-admins/data-protection.md) functionality that allows for building websites compliant with many different e-privacy laws and legislation.

Administrators can use the data protection features to create and manage tracking consents or easily remove personal data from the administration UI. Once the personal data is in the system, marketers can easily use the built-in Xperience online marketing features, e.g., ensure that marketing emails are sent only to visitors who provided appropriate consent.

To comply with data privacy regulations, developers must implement data collection and erasure features to match project requirements and accommodate how the website gathers, processes, and stores personal data.

Find out more about customer data protection in Xperience:

- [Customer data management](https://docs.kentico.com/documentation/business-users/digital-marketing/contact-management.md)
- [Data protection](https://docs.kentico.com/documentation/developers-and-admins/data-protection.md)

> **Tip:** **Recommendations – Consents**
>
> To ensure marketers stay within legal boundaries with their marketing activities, we recommend leveraging the Xperience data protection functionality for collecting and managing every piece of visitor data in the customer life-cycle, from cookie tracking up to data submitted through online forms. We recommend building a consent settings page to allow users to manage their consent.

### SEO-specific pages

#### Sitemap

Sitemaps help search engines correctly index website content and significantly affect search rankings. You need to create a custom generator to build a website sitemap.

> **Tip:** **Recommendations – SEO**
>
> We recommend doing a custom implementation of the sitemap generator, including a mechanism that enables editors to decide which page URLs to include in the sitemap and a way to canonicalize URLs. For example, add a custom URL canonical field to the page's **Content** tab.

#### Error pages

Errors can appear on different occasions. Visitors can request content that’s no longer available on the page, or they can make a typo in the URL. A user-friendly error page and simple website navigation can improve user experience and guide them to relevant content. Xperience uses MVC conventions for handling error pages.

> **Tip:** **Recommendations – Errors**
>
> Give editors the power to personalize the content of error pages by enabling Page Builder. It can help if your website contains a lot of content and the menu needs to provide quick navigation. The most frequently used error pages are:
>
> - 404 - Page Not Found.
> - 403 Forbidden - You do not have permission to access this page.
> - 400 Bad request - Your browser performed an invalid operation.
> - 500 Internal server error - The server encountered an error while processing your request.

#### Robots.txt and no-indexing content

Website administrators sometimes want to prevent search engine agents from indexing specific pages or parts of the website. The _Robots.txt_ page can help in such situations.

> **Tip:** **Recommendations - Indexing**
>
> We recommend providing editors or administrators with means to disallow parts of the website from search engines:
>
> - Add dedicated fields on the _Content_ tab to disable indexing of individual website pages. Selecting the fields should include the no-index directive in your output markup.
> - To disable indexing parts of the website, create a dedicated page (or a section in a custom module) for _Robots.txt_ file with, e.g., a _Text area_ form control and use custom code to process the directives administrators want to input into the Robots.txt. The implementation could also restrict the website's indexing by specific search bots.
