AI agents: the content index is at /llms.txt. Every page is also available as Markdown — send the request header Accept: text/markdown, or append .md to the page URL.
Xperience Docs
  • Community Questions & Answers (opens in a new tab)
  • Contact support (opens in a new tab)

Cookie consent

We use necessary cookies (opens in a new tab) to run our website and improve your experience while browsing. Additional cookies are only used with your consent. You may revoke your consent on the Cookies Policy (opens in a new tab) page or in your browser at any time.

Configure (opens in a new tab)
  • Documentation
    Administration interface basicsDevelopers and adminsBusiness usersChangelogGlossary
  • Guides
    Welcome to Xperience by KenticoAdministration interface basicsCustomer journeysDigital marketingConfigurationDevelopmentArchitectureUpgrade to Xperience by Kentico
  • Training
    For AdminsFor Business usersFor DevelopersFor Solution architects
  • API Examples
    ConfigurationContent managementDevelopmentDigital marketing
  • Changelog
    Documentation updatesSecurity advisories

Custom modules: custom settings

  • Introduction
  • Define the module in the Xperience UI
  • Build the global settings UI
  • Access custom global configurations
  • Model channel-specific settings
  • Build the channel-specific settings UI
  • Use the Options pattern to access channel-specific settings
  • Access channel-specific settings directly
  • Continue learning about customizations

Module: Custom modules: custom settings

1 of 9 Pages

Introduction

A custom module is a common requirement in digital experience projects. It allows developers to empower certain users to configure the site in new ways that are not available out-of-the-box.

This is the start of a series that shows how to create a basic custom settings module. To start with, the module will hold custom settings keys and values. Administrators and editors with sufficient permissions in the UI will be able to create and adjust the values of these settings, which you can access from your code.

Your browser does not support the video tag.

The custom settings we’ll create initially will be global and not associated with any specific channel. We will create custom channel-specific settings later in the series.

Some of the materials here are not exclusive, and may look familiar if you've already completed other modules.

Before you start

This series requires the following:

  • Familiarity with C#⁠ (opens in a new tab), .NET Core⁠ (opens in a new tab), Dependency injection⁠ (opens in a new tab), and the MVC pattern⁠ (opens in a new tab).

  • A running instance of Xperience by Kentico, preferably 31.7.2 or higher.

    Some features covered in the training guides may not work in older versions.

Code samples

You can find a project with completed, working versions of code samples from this series and others in the finished branch⁠ (opens in a new tab) of the Training guides repository.

The main branch⁠ (opens in a new tab) of the repository provides a starting point to code along with our guides and learning modules.

The code samples in this guide are compatible .NET 8⁠ (opens in a new tab) and later. They use C#12 features and syntax⁠ (opens in a new tab) , but they do not depend on any features introduced in later C# versions.

They come from a project that uses implicit using directives⁠ (opens in a new tab). You may need to add additional using directives to your code if your project does not use this feature.

← Previous page

1 of 9

Mark complete and continue →