Title: AnnoVisio
Author: Annovisio
Published: <strong>29.05.2026</strong>
Last modified: 19.07.2026

---

Шукати плагіни

![](https://ps.w.org/annovisio/assets/icon-256x256.png?rev=3558315)

# AnnoVisio

 Від автора [Annovisio](https://profiles.wordpress.org/ralf_st/)

[Завантажити](https://downloads.wordpress.org/plugin/annovisio.2.0.3.zip)

 * [Деталі](https://uk.wordpress.org/plugins/annovisio/#description)
 * [Відгуки](https://uk.wordpress.org/plugins/annovisio/#reviews)
 *  [Встановлення](https://uk.wordpress.org/plugins/annovisio/#installation)
 * [Розробка](https://uk.wordpress.org/plugins/annovisio/#developers)

 [Підтримка](https://wordpress.org/support/plugin/annovisio/)

## Опис

AnnoVisio displays events in a compact yearly calendar through the shortcode `[annovisio]`.

The fixed standard configuration uses exactly one source:

 * one public iCalendar/ICS feed from Google Calendar, Microsoft Outlook, Apple 
   Calendar, or another compatible calendar system, or
 * one Calendly account connected with a Personal Access Token.

The year grid is the default view. Event bars open a local detail dialog with title,
date, calendar name, description, event URL when available, and the calendar page
URL. The plugin displays the shortcode page itself as the event archive. It does
not create event posts, standalone event detail pages, Google OAuth connections,
or write access to any calendar.

For iCalendar/ICS sources, the configured public feed is fetched server-side with
the WordPress HTTP API and normalized into a WordPress transient. The configured
calendar name and color are applied when the overview is rendered, so changing these
display settings does not require a new feed fetch. No external frontend assets 
are loaded for iCalendar output.

For Calendly sources, AnnoVisio synchronizes event types and occurrences, supports
multi-day Calendly events, checks availability before booking, and opens the official
Calendly booking popup when a bookable event is selected.

Key features:

 * Yearly calendar with event detail dialog
 * Public iCalendar/ICS feed support
 * Support for public feeds from Google Calendar, Microsoft Outlook, Apple Calendar,
   and other compatible calendar systems
 * Configurable calendar name and color for the iCalendar/ICS feed
 * Server-side iCalendar/ICS fetching and transient-based caching
 * Manual iCalendar/ICS refresh and display-cache update
 * Recurring iCalendar/ICS events with RDATE and EXDATE support
 * Visible frontend errors for unavailable configurations, feed fetch errors, or
   parser errors
 * Calendly event type and occurrence synchronization
 * Manual or optional automatic Calendly synchronization
 * Multi-day Calendly events
 * Direct Calendly booking popup
 * Availability and sold-out checks before booking
 * Manual display-cache update without starting a Calendly synchronization

### External services

The plugin contacts external services only when the corresponding source is configured.

#### Public iCalendar/ICS feed

When an iCalendar source is selected, the plugin sends a server-side HTTP GET request
to the public ICS URL entered by the site administrator. The feed can come from 
any calendar provider that offers a public iCalendar/ICS feed URL, for example Google
Calendar, Microsoft Outlook, Apple Calendar, or another compatible calendar system.

The request is made from the WordPress server using the WordPress HTTP API when 
the cache is empty or when an administrator uses the manual refresh action. The 
request is used only to retrieve and parse the calendar data.

The requested calendar provider receives the server request, including normal HTTP
request metadata such as IP address and user agent. The plugin does not send visitor
data to the feed URL from the browser and does not load external frontend assets
for iCalendar output.

Administrators should only configure a public iCalendar/ICS feed URL whose provider,
terms of service, and privacy policy are acceptable for their website. The destination
and its terms and privacy policy depend on the service chosen by the administrator.

#### Calendly

When Calendly is selected, the plugin uses Calendly to synchronize event data, check
availability, and open the official booking popup.

External Calendly resources:

 * Service: https://calendly.com
 * API: https://api.calendly.com
 * Widget script: https://calendly.com/assets/external/widget.js
 * Widget stylesheet: https://calendly.com/assets/external/widget.css

What is sent and when:

 * During manual or automatic synchronization, authenticated server-side GET requests
   are sent to the Calendly API with the Personal Access Token configured by the
   administrator.
 * The plugin requests the connected user, active event types, occurrences, and 
   available times required by the existing synchronization and availability logic.
 * When a visitor clicks a Calendly event, the browser first calls this plugin’s
   REST endpoint on the same WordPress site. The plugin then checks the relevant
   event type, date, or UTC slot against Calendly.
 * The Calendly widget script and stylesheet are loaded only on calendar output 
   that contains a Calendly source. Booking interactions inside the popup are handled
   by Calendly.

Calendly legal information:

 * Terms: https://calendly.com/legal/customer-terms-conditions
 * Privacy: https://calendly.com/legal/privacy-notice

## Скріншоти

[[

[[

[[

[[

## Встановлення

 1. Install and activate AnnoVisio.
 2. Open **AnnoVisio** in the WordPress administration.
 3. Select iCalendar or Calendly for the standard configuration.
 4. For iCalendar, enter one public ICS feed URL, a calendar name, and a calendar color.
 5. For Calendly, open the Calendly management page, save one Personal Access Token,
    and run the synchronization.
 6. Add `[annovisio]` to a page or post.

## Часті питання

### Which sources are supported?

The standard configuration uses either one public iCalendar/ICS feed or one connected
Calendly account.

### Can I use Google Calendar, Microsoft Outlook, or Apple Calendar?

Yes. AnnoVisio can read public iCalendar/ICS feed URLs from Google Calendar, Microsoft
Outlook, Apple Calendar, and other compatible calendar systems.

### Does AnnoVisio create event pages?

No. The plugin renders the shortcode page itself as the archive and does not create
a custom post type or standalone event pages.

### How does iCalendar/ICS caching work?

Parsed and normalized calendar data is stored in a WordPress transient. The default
cache duration is 8 hours. Administrators can change the duration in hours or refresh
the feed manually. The configured calendar name and color are applied when the overview
is rendered, so changing these display settings does not require a new feed fetch.

### What happens when fetching or parsing an iCalendar/ICS feed fails?

The shortcode renders a visible frontend error. The plugin does not silently fall
back to stale, empty, guessed, or partial data.

### Are recurring iCalendar/ICS events supported?

Yes. The plugin expands recurring events in the WordPress-local recurrence window
from January 1 of the current year through 12 months after the current WordPress-
local date. RDATE and EXDATE are supported. Unsupported complex RRULE parts are 
rejected with a visible parser error rather than guessed.

### Does iCalendar output load external frontend assets?

No. iCalendar/ICS feeds are fetched server-side and no external frontend assets 
are loaded for iCalendar output.

### Does updating the shortcode start a Calendly synchronization?

No. Updating the shortcode refreshes its iCalendar data, reads the existing Calendly
tables, and rebuilds the display cache. Calendly synchronization is controlled separately
on the Calendly page.

### Are old Calendly events retained?

Yes. AnnoVisio continues to use the existing Calendly tables and synchronization
logic, including its handling of past events and occurrences.

### Does AnnoVisio support multi-day events?

Yes. Existing Calendly multi-day handling and iCalendar date ranges are displayed
in the yearly calendar.

## Відгуки

Для цього плагіна немає відгуків.

## Учасники та розробники

“AnnoVisio” — проект з відкритим вихідним кодом. В розвиток плагіну внесли свій 
вклад наступні учасники:

Учасники

 *   [ Annovisio ](https://profiles.wordpress.org/ralf_st/)

“AnnoVisio” було перекладено на 4 локалізації. Дякуємо [перекладачам](https://translate.wordpress.org/projects/wp-plugins/annovisio/contributors)
за їх роботу.

[Перекладіть “AnnoVisio” на вашу мову.](https://translate.wordpress.org/projects/wp-plugins/annovisio)

### Цікавитесь розробкою?

[Перегляньте код](https://plugins.trac.wordpress.org/browser/annovisio/), перегляньте
[сховище SVN](https://plugins.svn.wordpress.org/annovisio/) або підпишіться на [журнал розробки](https://plugins.trac.wordpress.org/log/annovisio/)
за допомогою [RSS](https://plugins.trac.wordpress.org/log/annovisio/?limit=100&mode=stop_on_copy&format=rss).

## Журнал змін

#### 2.0.3

 * Improved backend layout.

#### 2.0.2

 * Added links to video tutorials

#### 2.0.0

 * Integrated the iCalendar/ICS functionality from AnnoVisio Event Overview into
   AnnoVisio.
 * Added public iCalendar/ICS feed support from compatible calendar systems such
   as Google Calendar, Microsoft Outlook, and Apple Calendar.
 * Added configurable calendar name and color settings for the iCalendar/ICS source.
 * Added server-side iCalendar/ICS fetching, transient-based caching, manual refresh,
   and visible frontend errors for feed or parser failures.
 * Added recurring iCalendar/ICS event expansion with RDATE and EXDATE support.
 * Added local iCalendar/ICS event detail dialogs with event metadata and available
   event links.
 * Improved the backend layout.
 * Moved the Save shortcode button below the cache settings.

#### 1.1.5

 * Removed bundled non-German language files from the ZIP package.
 * Hardened scalar request handling in merged admin and frontend refresh actions.

#### 1.1.4

 * Restored the standard WordPress plugin language-pack loading behavior.

#### 1.1.3

 * Updated bundled German admin translations on manually installed ZIP builds.

#### 1.1.2

 * Moved cache duration below the save button in the shortcode editor.
 * Restored the manual synchronization status refresh icon and start-time display.
 * Renamed the shortcode editor Calendly button to Connect Calendly.

#### 1.1.1

 * Merged the iCalendar yearly overview into AnnoVisio.
 * Added one public iCalendar source as an alternative to Calendly.
 * Added the fixed standard shortcode configuration `[annovisio]`.
 * Added a separate Calendly administration area for connection, synchronization,
   and multi-day events.
 * Preserved the existing Calendly import, synchronization, database, availability,
   and booking logic.

#### 1.0.1

 * Improved compatibility with page caching plugins by loading calendar markup dynamically.

#### 1.0.0

 * Initial release.

## Мета

 *  Версія **2.0.3**
 *  Останнє оновлення **4 дні тому**
 *  Активних встановлень **Менше 10**
 *  Версія WordPress ** 6.2 або вище **
 *  Tested up to **7.0.2**
 *  Версія PHP ** 7.4 або вище **
 *  Мови
 * [Dutch](https://nl.wordpress.org/plugins/annovisio/), [English (US)](https://wordpress.org/plugins/annovisio/),
   [French (France)](https://fr.wordpress.org/plugins/annovisio/), [German](https://de.wordpress.org/plugins/annovisio/)
   і [Spanish (Spain)](https://es.wordpress.org/plugins/annovisio/).
 *  [Перекладіть на свою мову](https://translate.wordpress.org/projects/wp-plugins/annovisio)
 * Позначки
 * [calendar](https://uk.wordpress.org/plugins/tags/calendar/)[Calendly](https://uk.wordpress.org/plugins/tags/calendly/)
   [event calendar](https://uk.wordpress.org/plugins/tags/event-calendar/)[iCalendar](https://uk.wordpress.org/plugins/tags/icalendar/)
   [ics](https://uk.wordpress.org/plugins/tags/ics/)
 *  [Розширений перегляд](https://uk.wordpress.org/plugins/annovisio/advanced/)

## Оцінки

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/annovisio/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/annovisio/reviews/)

## Учасники

 *   [ Annovisio ](https://profiles.wordpress.org/ralf_st/)

## Підтримка

Є що сказати? Потрібна допомога?

 [Перейти в форум підтримки](https://wordpress.org/support/plugin/annovisio/)