OpenAgenda
Display calendars from https://openagenda.com on your site. Basic usage This WordPress plugin allows you to embed any calendar hosted on https://openagenda.com on your WordPress site. Upon activation, the plugin creates a new post type named Calendars. Just create a new calendar, provide the UID of the calendar you wish to display in the calendar settings box, and that’s it ! You can leave the content area for this calendar empty, as it will be populated automatically with your events ! Your events are automatically inserted after your content. If you wish to control where your events will be listed, just use the shortcode [openagenda] in your content. Settings General settings can be found under the Calendar > Settings entry in the admin menu. All data related to your API key or calendars can be found on https://openagenda.com. The settings are divided into two tabs: General and Integrations. General settings The General settings page provides the following settings : OpenAgenda API key : Your user API key. Providing your account API key is required for the plugin to work properly. It can be found in your account on https://openagenda.com Allow for embedded content : If your events contain embedded content, tick this box to allow the corresponding HTML tags. Load default stylesheets : The plugin provides very basic styling and depends heavily on your theme’s styles. Disable this to rely 100% on your theme styles. Legacy templates : Templates have been updated in 3.0.0. Check this option to continue using legacy templates. Cache duration : For performance reasons, basic requests to OpenAgenda are temporarily kept in cache. This settings controls the time to keep them cached, in seconds. Default event image : Choose an image to use in case events do not have one. Delete all calendar content on uninstall ? : controls whether you want to delete all your calendars on uninstall. Delete all options on uninstall ? : controls whether you want to delete all your calendar settings on uninstall. Allow OpenAgenda to collect usage stats ? : controls whether you want to send CMS used and site URL to OpenAgenda, for statistic purposes. Integrations settings The Integrations tab allows you to fine tune settings for various third party services the plugin uses. OpenStreetmap integration settings : Default map tiles link : This is the map tile used for the various maps displayed by the plugin. Default map tiles attribution link : this is the default attribution link placed on OpenStreetMaps. CloudImage integration settings : CloudImage API key : If you wish to use CloudImage to serve your images, enter your API key here. Permalinks settings In the Permalinks settings, you can change the prefix for your calendar pages. You cannot leave this blank as your URLs will conflict with WordPress’ default pages and posts. In the Settings > Reading section, you can set a calendar page as your front page. Note that it will still use the default calendar template provided by the plugin and the default front page template provided by your theme. Customizer settings In the Customizer, a new panel is available to house various display settings. For now only a main color setting is available. If you add Openagenda Filter widgets via the customizer, the preview will not display them immediately. That’s simply because filters are initialized on page load and the customizer preview is not always fully refreshed when a setting is changed. Simply publish your settings and refresh the page, or open your agenda page in another tab. Your filter should work just fine. Filter widget and shortcodes To allow users to easily find relevant events, the plugin also provides a convenient filter widget. Place the widget in your sidebar or other widgetized area, pick a filter and tweak any additional settings in the widgets admin. To integrate filters directly in your content instead of widget areas, the plugin also provide shortcodes. Every shortcode listed here (except for [openagenda]) corresponds to a filter option in the widget. Additionaly, shortcodes and widget filters have the same parameters, and every shortcode attribute corresponds to a widget filter setting. [openagenda] Displays the calendar. You do not need to use this shortcode explicitely, as it is automatically injected in the content of your “calendars” posts. However, if you need to insert static content after your list of events, you can do so by inserting this shortcode, then your static content afterwards. [openagenda_filter_active] Displays the active filters. It takes no parameters. [openagenda_filter_choice] Displays a list of choices, depending on the field chosen. It takes the following parameters : field: the slug of the choice field you want to display (e.g. “cities”, “keywords”, “departments”, “favorites”, etc… ). additional_field: Any custom field you have setup in your OpenAgenda administration. Only works when ‘Additional Field’ is the chosen field. page_size: Number of options to display before the ‘More options’ button. You can find the list of available additional fields in the Forms section of your agenda settings on openagenda.com (ex: https://openagenda.com/[your-agenda]/admin/schema) [openagenda_filter_calendar] Displays a calendar. It takes no parameters. [openagenda_filter_map] Displays an interactive map to locate and search events. It takes the following parameters : map_tiles_link : Map tiles link to use. Defaults to https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png map_auto : Whether to automatically update map on scroll. [openagenda_preview] Displays a preview of any calendar. It takes the following parameters : uid : UID of the calendar you wish to preview. size : Number of events to display. sort : Event sort option. Accepts lastTimingWithFeatured.asc, timingsWithFeatured.asc, lastTiming.asc, timings.asc, updatedAt.asc or updatedAt.desc. filters : Query string representing filters to apply to the request. To ensure it works properly and avoid breaking the shortcode, you should urlencode the query string. You can do so via a simple tool like https://www.urlencoder.org/fr/ links : Accepts oa or an empty string. If set to oa, event links will point to events pages on https//openagenda.com instead of local pages. [openagenda_filter_relative] Allows to filters past or upcoming events. It takes no parameters. [openagenda_filter_search] Displays a search field. It takes the following parameters : placeholder : text field placeholder. Customization Templates for the list of events and individual events can be customized in your child theme. If you’re not already using a child theme, it is recommended to create one. https://developer.wordpress.org/themes/advanced-topics/child-themes/ Just create a folder named openagenda/ in your child theme, then copy and paste the template you wish to override from the plugin’s templates/ folder. Here is a list of templates you can find in the plugin’s templates/ folder : event-loop.php : main wrapper for list view and single event view. Displays exports button and pagination at the top and bottom. list-header.php : contains the total number of events and active filters display. event.php : template used to display the event information on list views. single-event.php : template used to display the event information on single event views. event-location.php : template used to display the location information on single event views. event-additional-fields.php : template used to the list of additional fields on single event views. preview-loop.php : main wrapper for the preview widget and shortcode. The legacy/ folder contains templates used prior to version 3.0.0. If you updated the plugin and notice issues on your frontend, that’s probably because your site used legacy templates. Please try and check the Use legacy templates checkbox in the settings page. The plugin provide convenient template tags for you to display event data in the inc/template-tags.php file. Feel free to define your own in your theme. The plugin also provides many hooks to allow you to customize the html output or other various data. Usage of third party services and copyright information This plugin displays data hosted and provided by https://openagenda.com. By using this plugin, you accept and agree with OpenAgenda’s terms and conditions and privacy policy. Please make sure to read them before using this plugin. Also, using this plugin DOES require an account at https://openagenda.com, and an API key. By default, maps displayed by this plugin use data from https://openstreetmap.org/ and uses the leaflet JS library. By using this plugin, you accept and agree with OpenStreetMap’s terms of use, acceptable use policy and privacy policy The plugin provides optional integration with CloudImage. The integration requires to create an account at https://cloudimage.io and accept and agree their terms of use. Icons used in the UI are Genericons, licenced under the GPL 2.0.
Top keywords
- openagenda27×1.88%
- settings23×1.60%
- calendar16×1.12%
- events14×0.98%
- filter13×0.91%
- https13×0.91%
- display12×0.84%
- event11×0.77%
- content10×0.70%
- templates10×0.70%
- com9×0.63%
- default9×0.63%
SDAweb Calendar Sync for Google Calendar
SDAweb Calendar Sync turns any Google Calendar into a polished, on-brand events display on your WordPress site — without duplicate data entry. Keep scheduling in Google Calendar the way you already do; the plugin pulls those events in and keeps your site in sync automatically. It’s for anyone who already runs their events in Google Calendar and wants them to look like a native part of their site instead of an embedded iframe — businesses, teams, venues, clubs, communities, and organisations of every kind. Insert a calendar with a Gutenberg block, a shortcode, or a classic widget. All three share one render pipeline, so the output is identical however you add it. Six ways to show your calendar List / Agenda — chronological, optionally grouped by day, week, or month Month grid — classic 7×6 calendar with multi-day event ribbons spanning across cells, today highlight (cell or whole-column style), optional ISO 8601 week-number column, and per-feed pastel chips Card grid — upcoming events as styled cards, responsive Week — 7 day columns, today highlighted Day — single-day agenda Mini-month — compact dot-density grid for sidebars and widgets, with a tap-to-expand event panel showing today + next upcoming events and a “Load more” button Switch between views with one setting, or expose a visitor-facing view-toggle pill so visitors can switch themselves. Under the hood every view shares the same data layer, the same CSS-variable system, and the same accessibility baseline. Smart UX out of the box Hover popover on event chips (Month, Week, Mini) — a floating card with date, time, location, calendar, recurrence summary, and a click-through link, so visitors get the full event detail without leaving the page. Desktop hover + keyboard focus only; touch users keep direct click-through. Mobile auto-degrade Month → Mini — below ~600px the full grid is replaced by the compact Mini-month view, so phone visitors get a clean, tappable calendar with no extra work from you. One wrapper, two layouts, no JS swap. ICS subscribe dropdown — one tap to add your events to a visitor’s own calendar: Google Calendar (web), Apple Calendar / Outlook (webcal), Android Google Calendar app (intent), and Copy-link with toast confirmation. Mobile becomes a bottom sheet. Live search + jump-to-date picker — optional chrome controls so visitors can filter or navigate quickly. Multi-day event ribbons — week-spanning bars with arrow indicators when an event continues beyond the visible row. Recurring event indicator — small ↻ icon with a plain-language cadence summary in the tooltip (“Repeats weekly until 31 December 2026”). Per-display locale override — render a calendar in a specific language (e.g. nb_NO) even when the site language differs, so you can run a localized calendar on a site that’s in another language. Two authentication paths API key — for calendars marked “Make available to public” in Google Calendar. One field, paste, done. Service Account JSON — for private calendars without per-user OAuth. Upload the JSON, share the calendar with the service-account email, you’re set. Credentials are encrypted at rest using a key derived from your site’s authentication salt. They are never echoed back into the admin UI — only the masked value and (for service accounts) the public service-account email are shown. Theme-aware out of the box The plugin reads your active theme’s theme.json color palette and uses your primary, accent, foreground, and background colors automatically. Per-display overrides let you set custom primary, accent, today-highlight, and link colors and force light/dark mode without touching code. Every design token is exposed as a CSS custom property so a developer can fully restyle the calendar from their theme stylesheet. Five built-in theme presets One-click coordinated colour bundles: Default (clean blue), Warm earth (cream + deep red), High contrast (solid black on white for AAA-stricter sites), Forest (deep green), Sunset (warm coral + amber). Accessibility built in WCAG 2.2 AA baseline with several AAA touches: Live contrast warnings on every colour picker — the admin UI shows the WCAG ratio against both light and dark surfaces with pass/fail markers as you choose colours Automatic high-contrast overlay via prefers-contrast: more Focus-visible halo: a 4px white ring behind the primary outline so focus stays visible against any chip background prefers-reduced-motion honored everywhere ARIA roles and labels on the month grid, navigation, popovers, and view-toggle Semantic HTML throughout RTL-aware via CSS logical properties Tabular numerals for day numbers and time labels so single- and double-digit values don’t drift Built for the WordPress.org standard Block editor first-class — server-side rendered, ServerSideRender preview, all the standard InspectorControls Shortcode and classic widget on the same render pipeline No bundled core libraries (no jQuery on front-end, no Guzzle, no Carbon, no Monolog) No third-party authentication relay — your credentials only ever talk directly to googleapis.com Translation ready via translate.wordpress.org once the plugin is published and indexed (no bundled .po/.mo — WordPress auto-loads locale files into wp-content/languages/plugins/ per the WP Plugin Handbook), plurals via _n(), JS strings via wp_localize_script Free and GPLv2 For developers Extension hooks are documented in docs/hooks.md inside the plugin folder. The first-release set includes filters for event data, event URLs, query args, cache TTL, render output, palette resolution, plus actions for refresh and uninstall lifecycle. Third-Party Services This plugin connects to the Google Calendar API to retrieve events from calendars you configure. Service: Google Calendar API v3 Website: https://developers.google.com/calendar Terms of Service: https://developers.google.com/terms Privacy Policy: https://policies.google.com/privacy Data sent: the calendar ID(s) you configure, plus either your API key or a JSON Web Token signed with your service account credentials. Event data is returned to your server and cached locally as WordPress transients. No event data is sent to any third party. The ICS subscribe feature, when enabled, serves a self-hosted iCalendar (.ics) feed from your own site — built from the same calendar data already fetched via the Google Calendar API above — so subscribers can add it in Google Calendar, Apple Calendar, Outlook, or any other app that supports calendar subscriptions. No data is sent to any third party beyond the Google Calendar API connection already disclosed.