13 CMS settings
CmsSettings (namespace Relatude.CMS.Settings) holds the CMS's settings for one database. The
admin UI shows them on a CMS tab beside the database's own settings. Code reads them like this:
var settings = db.Settings.Get<CmsSettings>();
if (settings.Analytics.Enabled) { … }Values come in layers, and each layer overrides the one before:
- the defaults in code;
relatude.settings/cms.json, shared and committed with the application;- what the admin UI saved on this server;
RelatudeDB:CustomSettings:cmsin appsettings or environment variables.
{
"RelatudeDB": {
"CustomSettings": {
"cms": { "Analytics": { "Enabled": true, "ExcludedPaths": "/api/, /preview" } }
}
}
}Every CMS setting applies at once, without a restart.
| Setting | Default | Admin UI label |
|---|---|---|
Analytics.Enabled |
false |
Record page views |
Analytics.LogBots |
true |
Record bots |
Analytics.LogLocation |
true |
Record location |
Analytics.LogQueryString |
false |
Record query strings |
Analytics.ExcludedPaths |
none | Paths left out, separated by commas |
Analytics.InjectBotCheck |
true |
Add the bot check |
Analytics.InlineBotCheck |
true |
Write it into the page |
Analytics.LookUpAddresses |
true |
Look up visitors |
Analytics.LookupDelaySeconds |
5 |
Wait before looking up (0 to 300 seconds) |
Modules.Disabled |
none | Modules turned off, by name, separated by commas (chapter 18) |
InterfacePlugins |
none | Interface plugins: a name, an address, and whether it loads |
Content.Tree |
RTree |
Content tree: the one-to-many relation the CMS interface's content tree follows |
Forms.Layouts |
none | Form layouts: the editing form of a node type, designed in the CMS interface |
Skins.Default, Skins.Custom |
windows, none |
Default skin, and the installation's own skins for the CMS interface |