Settings - Global Settings
There are numerous options to CMS Made Simple that are used throughout your whole website. These settings can be found by browsing to the "Site Admin" >> "Settings - Global Settings" page in the CMSMS Admin Console.
Note: if you experience a "forbidden" or "404" page when attempting to submit Global Settings, you most likely have ModSecurity installed. If you do not have the ability to disable it, you will need to contact your host to whitelist this rule, or disable ModSecurity completely (recommended).
For every new installation it is advised that you review each of these settings and adjust them accordingly. Below you will find information on many of the options.
This page is divided into numerous tabs that reasonably separate the options into various logical sections. These tabs are:
- General Settings
This tab contains general settings that apply to the website, or its administration console as a whole.
- Content Editing Settings
This tab contains settings that apply to the content list found under "Content" >> "Pages"
- Mail Settings
This tab contains settings for adjusting how the CMS sends emails. If you are unsure of the settings, you may wish to contact your host.
- Maintenance Mode
This tab manages the ability to make the website appear disabled for external visitors, and the message that is displayed to them when it is disabled.
- Advanced Setup
This tab contains options and settings that will aide in making the site run optimally. It requires more advanced knowledge of web servers.
- Smarty Settings
The final tab contains settings controlling how the Smarty template engine will behave when processing and caching templates.
General Settings
Site Name
The site name is a friendly name for your website. It can be name of the company, store, club, or organization that this website represents, or the purpose of the website. This value is output to your web pages by the {sitename} tag.
Default language for the frontend
This option allows selecting a language that will be used for displaying strings from modules, and for assisting in formatting numbers and dates to your website visitors. The options available to you in this list depend on the additional language packs that were installed.
When a language is selected from this list, CMSMS will use this setting to determine what language files to load when a module needs to display some strings. Additionally, the language setting is used to attempt to set the locale for formatting of numbers, dates and times.
For further information please read this page on Language Handling in CMS Made Simple
The CMSMS core package does not provide "Multi-Language" capabilities out of the box. This is functionality that can best be provided by third party addon modules.
Frontend WYSIWYG
This option allows you to select a WYSIWYG module that can be used for all frontend editing requests where a WYSIWYG editor is permitted.
CMSMS is distributed with a simple WYSIWYG module called https://docs.cmsmadesimple.org/modules/core/microtiny. If you have installed and enabled additional third party WYSIWYG modules, they will appear in this list.
Disallow WYSIWYG editors on global content blocks
Clicking on this checkbox will ensure that wysiwygs are NOT used on any global content block, for any user.
Global Metadata
This section allows specifying metadata (and even Smarty tags) that are global for the entire system. This value is prepended to the page specific metadata information in each page, and is output by the {metadata} tag.
Default Administration Theme (for the login page and new user accounts)
This option lists the installed and available administration themes and allows you to specify one to be used to display the administration login screen, and as a default for new user accounts. Adjusting this option will have no effect on existing user accounts.
Default backend WYSIWYG (for new user accounts)
This option allows you to specify the WYSIWYG editor that will be used by new administration users. It displays a list of the available (and enabled) WYSIWYG modules.
Adjusting this option has no effect on existing administration user accounts.
Date Format String
This option allows specifying a default strftime compatible format string for use by the cms_date_format modifier modifier.
Thumbnail Width and Thumbnail Height
The FileManager module, and the image manager are both capable of generating thumbnail images from uploaded image files. These options allow specifying the maximum size (in pixels) of these images.
When the core generates thumbnail images it attempts to retain the aspect ratio of the original image. Therefore the thumbnail image may not conform exactly to the values specified in these options.
Though some modules may use these preferences when generating thumbnails it is entirely possible that they use their own settings.
Search module
Select the module that should be used to index words for searching, and will provide the site search capabilities. Help for the default Search module can be found under Extensions.
Content Editing Settings
These options specify the behavior of the content edit form when adding or editing a content page in the Content Manager.
Automatically create page URLs
If enabled, CMSMS will automatically create Page URLS for all content pages. This can aide in search engine optimization, but is only valid if Pretty URLs are enabled.
Automatically created URLs are flat
If enabled, CMSMS will automatically set the page URL to the value of the page alias when a new content page is saved, or when the page URL field is erased in edit content. This option is only useful if the above field to automatically create page URL's is enabled, and if Pretty URLs are enabled.
With this setting enabled, the existing URL of a content page will not be adjusted when the page is edited.
Page URLs are required
When enabled, CMSMS will generate an error if, on adding or editing a content page, the URL field is empty.
Content Types that are NOT allowed
This option allows you to select content types that should not appear in the content type dropdown of the add or edit content forms.
Basic Properties:
This option allows you to select properties of the content page that should appear on the "Main" tab of the add or editcontent form.
These options may allow users with limited content editing privileges to edit some of the fields that normally only an advanced editor with full access to all content would be able to edit.
Path for the {page_image} tag:
This field allows specifying a path (relative to the uploads directory) that can be read to build a list of images for use in the "image" field of each content page.
A blank value in this field indicates that the list of images for this field will be pulled from the uploads directory itself.
Path for thumbnail field:
This field allows specifying a path (relative to the uploads directory) that can be read to build a list of images for use in the "thumbnail" field of each content page.
A blank value in this field indicates that the list of images for this field will be pulled from the uploads directory itself.
Path for the {content_image} tag:
This field allows specifying a default path (relative to the uploads directory) for the {content_image} tag. Note: a parameter to the tag allows overriding this value.
Maintenance Mode
These settings allow disabling the website for most site visitors. You may want to disable the website when performing backups, upgrades or making dramatic changes to the website.
Is the website "Down for Maintenance"
This option toggles the active or disabled state of the website. If "Yes" is selected, the site down message will be displayed to all visitors of the website (unless some additional settings specify differently).
Use the WYSIWYG on "Site Down" Message
If enabled, and you have a WYSIWYG editor selected in your administrator account preferences, then the selected WYSIWYG editor will be enabled when editing the site down message.
You must click submit for this preference to take effect.
Site Down Message:
This text area allows editing the HTML of the message to be displayed to site visitors when the site is in Maintenance Mode.
Exclude users logged in to the CMSMS admin console
This option allows users who are currently logged into the admin console to the view the website as if it were live.
Exclude these Addresses from Site Down Messages:
This option allows specifying a list of IP addresses (or netmasks) for users that should see the live website. Visitors from these IP addresses do not also need to be logged in to the CMSMS admin console.
Addresses can be specified in the following formats:
- 1. xxx.xxx.xxx.xxx -- (exact IP address)
- 2. xxx.xxx.xxx.[yyy-zzz] -- (IP address range)
- 3. xxx.xxx.xxx.xxx/nn -- (nnn = number of bits, Cisco style. i.e: 192.168.0.100/24 = entire 192.168.0 class C subnet)
Mail Settings
In CMSMS 2.0, mail settings are now integrated into the core and no longer use the CMSMailer module. Below are the settings to properly configure CMSMS and modules to send emails. Please use the information provided by your host to adjust the settings. If you still cannot get the test message to send properly, you may have to contact your host for assistance.
Mailer
This choice controls how CMSMS will send mail. Using PHPs mail function, sendmail, or by communicating directly with an SMTP server.
The "mail" option should work on most shared hosts, however it almost certainly will not work on most self hosted windows installations.
The "sendmail" option should work on most properly configured self hosted Linux servers. However it may not work on shared hosts.
The SMTP Option requires configuration information from your host.
From Address
This option controls the default address that CMSMS will use to send email messages. This cannot just be any email address. It must match the domain that CMSMS is providing. Specifying a personal email address from a different domain is known as "relaying" and will most probably result in emails not being sent, or not being accepted by the recipient email server. A typical good example for this field is noreply@mydomain.com
From Name
Here you can specify a name to be associated with the email address specified above. This name can be anything but should reasonably correspond to the email address. i.e: "Do Not Reply"
SMTP Hostname
When using the SMTP mailer this option specifies the hostname (or IP address) of the SMTP server to use when sending email. You may need to contact your host for the proper value.
SMTP Port
When using the SMTP mailer this option specifies the integer port number for the SMTP server. In most cases this value is 25, though you may need to contact your host for the proper value.
SMTP Time-out (seconds)
When using the SMTP mailer, this option specifies the number of seconds before an attempted connection to the SMTP server will fail. A typical value for this setting is 60.
Note: If you need a longer value here it probably indicates an underlying DNS, routing or firewall problem, and you may need to contact your host.
SMTP Authentication is Required
When using the SMTP mailer, this option indicates that the SMTP server requires authentication to send emails. You then must specify (at a minimum) a username, and password. Your host should indicate whether SMTP authentication is required, and if so provide you with a username and password, and optionally an encryption method.
Note: SMTP authentication is required if your domain is using Google apps for email.
Encryption method
This option, when using SMTP authentication specifies an encryption mechanism to use when communicating with the SMTP server. Your host should provide this information if SMTP authentication is required.
User name
This is the username for connecting to the SMTP server if SMTP authentication is enabled.
Password
This is the password for connecting to the SMTP server if SMTP authentication is enabled.
Sendmail Path
If using the "sendmail" mailer method, you must specify the complete path to the sendmail binary program. A typical value for this field is /usr/sbin/sendmail. This option is typically not used on windows hosts.
Note: If using this option your host must allow the popen and pclose PHP functions which are often disabled on shared hosts.
Advanced Setup
The options in this section allow some tuning of the performance and behaviour of your website. It is important to adjust these settings when a site goes live.
Allow Browser to Cache Pages:
When enabled, and a site visitor browses to a "cachable" page CMSMS will send headers that indicate that the content on this page does not change frequently, and can be cached on the browser.
Allowing browser caching is generally a good idea, particularly if you experience a large amount of repeat visitors to your website, and/or your content does not change frequently.
CMSMS never allows the browser to cache POST requests, therefore it is usually possible to enable browser caching, and caching on pages even if there are forms on those pages. You can find more information about how CMSMS handles caching on this page
Your users can always "reload" the page to get the latest version even if the browser has cached it.
Browser Cache Expiry Period (minutes):
This field allows specifying how long (in minutes) the browser should cache the page for. It is wise to extend this period on pages that do not change often, and on busy websites.
Remove cache files that are older than the specified number of days:
This option is used to specify how often (in days) CMSMS should clean up its internally generated files. When enabled, CMSMS will use the internal pseudocron mechanism to once each day, delete files older than the specified number of days.
It is important to configure this option to a reasonable value (usually something like 7 is sufficient) so that CMSMS has a chance to regenerate its cache files and to prevent disk space being used up by temporary files generated by some modules.
File Creation Mask (umask):
This section allows adjusting and testing the umask that is used to determine the permissions of newly created files and directories.
It is critical that the process that executes PHP scripts is able to create files and directories, and then to read and write to those files and directories. CMS Made Simple needs this capability to compile Smarty templates, upload images, generate thumbnails and a number of other functions.
On most servers, an OCTAL value of 022 is sufficient. This should grant permissions of 755 on directories that the PHP script generates, and 644 on files that the PHP script generates.
Allow users to view notifications
This option will enable notifications being shown at the top of the page in each Admin request. This is useful for important notifications about the system that may require user action. It is possible for each Admin user to turn off notifications in their preferences.
Lock timeout
Enter a default value (in minutes) for locks to timeout. This is used if a piece of functionality does not provide a custom lock timeout value.
Pseudocron Granularity
This setting indicates how often the "Pseudo Cron" capabilities of CMSMS are executed. Pseudo Cron tasks are used to perform various automated tasks in CMSMS including clearing the admin cache, and gathering notifications from CMS Made Simple. A setting of One hour is usually sufficient for sites that receive reasonable amounts of traffic.
Lifetime of Log Entries
This setting indicates the maximum length of time that admin log entries should be retained for. It is important to set this value to a reasonable number that allows a reasonable review of the history of activity on the website but does not allow the database to grow to abnormal size. A value of two weeks is usually sufficient for most sites.
Allow periodic checks for new versions
If enabled, the system will perform a daily check for a new release of CMSMS
Smarty Settings
This tab contains settings that allow tuning of the compiling and caching settings of Smarty. Enabling Smarty caching can have serious performance benefits to your website, and therefore you should try to enable Smarty caching wherever possible. The page Caching in CMS Made Simple describes the caching options in detail.
Enable Smarty Caching
When enabled, the output from various plugins will be cached to increase performance. Additionally, most portions of compiled templates will be cached. This only applies to output on content pages marked as cachable, and only for non-Admin users. Note, this functionality may interfere with the behaviour of some modules or plugins, or plugins that use non-inline forms.
Note: When Smarty caching is enabled, global content blocks (GCBs) are always cached by Smarty, and user defined tags (UDTs) are never cached. Additionally, content blocks are never cached.
Do a Compilation Check
If disabled, Smarty will not check the modification dates of templates to see if they have been modified. This can significantly improve performance. However performing any template change (or even some content changes) may require a cache clearing.