Extensions

Search Extensions

Advanced iCal Export v2

Do you want to customize the iCal export options? This extension can help you to export a unique range of events, including a full year at a time.

With The Events Calendar, the ability to export events through an iCal feed comes standard. By default, you can find an “Export Events” button under the calendar. When you click the button, you can download a link to the feed containing the events of that view.

Since there is no year view available with the calendar, there is no way to get a feed including events that span the whole year. This is where the extension comes into play.

The Advanced iCal Export v2 extension gives you advanced export capabilities with the iCal feed.

You will need to enter a URL into your browser’s address bar with specific parameters which will yield your customized feed.

Here is a sample URL to explain how this works.

https:// domain.com/ events/ list/ ? ical=1 & custom=1
  • domain.com – The domain of your website with the calendar.
  • events/ – The calendar URL or slug that is set under Events > Settings > General tab > Events URL slug. If you have it set to something besides “events”, use that instead in your URL.
  • list/ – This refers to the list view. Without this, the custom export will not work.
  • ical=1 – Defines that an iCal feed is being requested.
  • custom=1 – Defines that a custom iCal feed is being requested and not the default.

And the optional parameters.

Parameters

The URL parameters you can / must use:

ical=1 required Tells the website that we need an iCal feed.
custom=1 required Tells the website that we are using a custom date range.
start_date=[date] optional You can leave it empty, or set a specific start date.
Format: yyyy-mm-dd
end_date=[date] optional You can leave it empty, or set a specific end date.
Format: yyyy-mm-dd
year=[year]
optional You can set it to a specific year.
Format: yyyy and can be between 1900 and 2100
limit=[number]
optional You can specify the number of events to be exported.
category=[category-slugs]
optional You can define event categories that should be included in the export. To export events from more categories, use a comma-separated list of the category slugs.

Examples

Here are the different URL parameters you can use for advanced iCal exporting.

  • Simple: export events from today until 1 year into the future:
    http://example.com/events/list/?ical=1&custom=1
  • Export events of a specified year, e.g. from January 1 to December 31 of 2021:
    http://example.com/events/list/?ical=1&custom=1&year=2021
  • If only the start date is defined, then events from the start date until 1 year from the start date will be exported, e.g. from October 14, 2021, until October 13, 2022:
    http://example.com/events/list/?ical=1&custom=1&start_date=2021-10-14
  • If only a future end date is defined, then events starting from today until the specified end date will be exported, e.g. from today until July 31, 2030:
    http://example.com/events/list/e?ical=1&custom=1&end_date=2030-07-31
  • If both start and end dates are defined, then events from that time range will be exported, e.g. from July 1, 2021, until June 30, 2022:
    http://example.com/events/list/?ical=1&custom=1&start_date=2021-07-01&end_date=2022-06-30
  • If a limit is defined, then the first [limit] number of events of the specified date range will be exported, e.g. the first 10 events of September 2021:
    http://example.com/events/list/?ical=1&custom=1&start_date=2021-09-01&limit=10
    Or the next 20 events from today:
    http://example.com/events/list/?ical=1&custom=1&limit=20
  • If a category is defined by the category slug, then events from that category will be exported, e.g. events from the “calendar-conference” and “yoga” categories, from now until one year from now:
    http://example.com/events/list/?ical=1&custom=1&category=calendar-conference,yoga

Note: To prevent performance issues, it is recommended to set a reasonable date range. If the date range contains too many* events, then the server may deny the request and time out.

* The number depends on the available server resources and server settings.

Changelog

  • Version 1.1.1
    • June 24, 2023
    • Fix – Update to use the new Service_Provider contract in common.
  • Version 1.1.0
    • October 23, 2021
    • Added the option to define event categories for the export.
  • Version 1.0.0
    • October 14, 2021
    • Initial release

Download Extension

👋 Heads up! We provide limited support for extensions, but you can still open a ticket over at our Help Desk to report any issues.
Install Instructions