Both the free ICS Calendar and ICS Calendar Pro include a Settings page where various site-wide options for ICS Calendar are configured. In ICS Calendar (free), this is accessed by clicking ICS Calendar in the admin side menu, then clicking the Settings tab at the top of the page. In ICS Calendar Pro, it’s under ICS Calendar → Settings and Utilities, then the Settings tab.
Both versions contain the options shown below. ICS Calendar Pro contains additional options, which are covered in the Pro Documentation. (Note: The Pro Documentation screenshots and descriptions are currently a bit out of date.)
Loading
The Always use AJAX to render calendars setting loads all calendars on the site via AJAX, the equivalent of adding ajax="true"
to every shortcode. AJAX has two main benefits: 1) it can improve page loading times for large calendars, because the rest of the page will render first and then the calendar will fill in when it’s loaded, and 2) it avoids conflicts with most caching plugins that may cause calendars not to update.
If you are using a caching plugin, the AJAX option is strongly recommended, and with caching plugins you should also turn on the Bypass nonce on AJAX requests option. Nonce is a security feature designed to prevent unauthorized database modifications, but it is not strictly needed for ICS Calendar and may be removed entirely in a future update. For now, checking this option will avoid possible issues with calendars failing to load on pages that have been cached more than 24 hours.
If your calendar feeds are large, you may need to adjust the Increase memory limit when rendering calendars setting, to avoid out-of-memory errors on the calendar pages.
Most sites do not need to Use legacy feed request method, however if you find that your calendars aren’t loading, try this option to see if it resolves the issue. Note that the legacy method may be removed entirely in a future update.
If your calendar server and web server are running on the same physical server, or within the same internal network, your calendars may not load. Adding the hostname of the calendar server to the Allow access to these hostnames that resolve to reserved IP addresses list should resolve the issue.
Caching
By default, ICS Calendar caches all feed data for one hour (3600 seconds). This caching is important for performance and for avoiding hitting request limits imposed by some calendar servers. If your calendar data updates more frequently than once per hour, use the Transient (cache) expiration setting to adjust ICS Calendar’s cache expiration. We recommend setting it to no less than 300 (five minutes).
Miscellaneous
The Miscellaneous settings are less common. If your site is using Classic Editor or another plugin that restores the pre-Gutenberg/Block Editor interface, ICS Calendar automatically adds an Add ICS Calendar button to the WYSIWYG toolbar. If you do not wish to have this option available to your content editors, check the Remove “Add ICS Calendar” button in Classic Editor button.
ICS Calendar changed the default values for several parameters in version 10.6. If your initial installation of ICS Calendar was 10.6 or later, the Use new parameter defaults (v.10.6) box will be checked by default. If your installation predates 10.6, it will not be checked, and the old defaults will still apply. We do not recommend unchecking this box if it is checked; however, if you are using the old defaults and wish to switch to the new ones, you can check this box.