Relatude Help

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:

  1. the defaults in code;
  2. relatude.settings/cms.json, shared and committed with the application;
  3. what the admin UI saved on this server;
  4. RelatudeDB:CustomSettings:cms in 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