Title: RedKirin Calendar Flex for Google Calendar
Author: redkirin
Published: <strong>October 26, 2026</strong>
Last modified: October 26, 2026

---

Search plugins

![](https://ps.w.org/redkirin-calendar-flex-for-google-calendar/assets/banner-772x250.
png?rev=3765376)

![](https://ps.w.org/redkirin-calendar-flex-for-google-calendar/assets/icon-256x256.
png?rev=3765376)

# RedKirin Calendar Flex for Google Calendar

 By [redkirin](https://profiles.wordpress.org/redkirin/)

[Download](https://downloads.wordpress.org/plugin/redkirin-calendar-flex-for-google-calendar.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/#description)
 * [Reviews](https://wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/#reviews)
 *  [Installation](https://wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/#installation)
 * [Development](https://wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/#developers)

 [Support](https://wordpress.org/support/plugin/redkirin-calendar-flex-for-google-calendar/)

## Description

RedKirin Calendar Flex for Google Calendar turns one or more **public Google Calendar
ICS feeds** into a calendar that is rendered with your own HTML, CSS and JavaScript
on your WordPress site. Google’s embed iframe is not used, so the calendar inherits
your theme and can be styled freely.

**Features**

 * Register up to five public Google Calendar ICS URLs per calendar, each with its
   own display name and color.
 * Month, week and day views with previous / today / next navigation, optionally
   switchable by visitors.
 * Limit navigation to the present and future, or to a number of months ahead.
 * Optional Japanese public holidays (fetched from Google’s public holiday calendar,
   observances excluded).
 * Event details in an accessible modal (keyboard, ESC, focus management).
 * Recurring events (RRULE, RDATE, EXDATE, RECURRENCE-ID, cancelled instances) and
   time zones are handled server side.
 * Server-side caching (default 60 minutes) with stale fallback when Google is unreachable.
 * Base stylesheet built on CSS custom properties, five color themes, and a switch
   to disable the base CSS entirely.
 * Theme template overrides: copy `month.php`, `week.php`, `day.php` or the parts
   into `your-theme/redkirin-calendar-flex-for-google-calendar/`.
 * Shortcode: `[redkirin_calendar id="123"]`.
 * Live preview in the editor that follows unsaved changes.

**Not included (by design)**

 * Private calendars, Google API keys or OAuth. Only the _public_ ICS address of
   a calendar is supported.
 * Real-time synchronization. Google updates public ICS feeds with a delay of up
   to several hours, and the plugin caches the data.

This plugin is not affiliated with, endorsed by, or sponsored by Google LLC. Google
Calendar is a trademark of Google LLC.

### External services

This plugin retrieves calendar data from Google’s public ICS feeds.

 * **Service:** Google Calendar public ICS feeds (`calendar.google.com`).
 * **What is sent:** Your WordPress server requests the ICS URL(s) that an administrator
   entered in the plugin settings, and, when the “Show Japanese public holidays”
   option is enabled, Google’s public Japanese holiday calendar URL. Requests include
   the server’s user agent string and, for conditional requests, the ETag / Last-
   Modified values of the previous response. No visitor data is sent; visitors’ 
   browsers never contact Google.
 * **When:** When a calendar is displayed and the cache (default 60 minutes) has
   expired, when an administrator presses “Refresh now” or “Test connection”, and
   when the live preview in the editor is updated.
 * **Terms and privacy:** [Google Terms of Service](https://policies.google.com/terms),
   [Google Privacy Policy](https://policies.google.com/privacy).

## Screenshots

[⌊Month view with the base stylesheet (holidays and multi-day events).⌉⌊Month view
with the base stylesheet (holidays and multi-day events).⌉[

Month view with the base stylesheet (holidays and multi-day events).

[⌊Week view with the time grid on desktop.⌉⌊Week view with the time grid on desktop
.⌉[

Week view with the time grid on desktop.

[⌊Day view with the event details modal.⌉⌊Day view with the event details modal.⌉[

Day view with the event details modal.

[⌊Calendar editor with connection test and live preview.⌉⌊Calendar editor with connection
test and live preview.⌉[

Calendar editor with connection test and live preview.

[⌊Month view on a phone (dots per event, tap a date for the list).⌉⌊Month view on
a phone (dots per event, tap a date for the list).⌉[

Month view on a phone (dots per event, tap a date for the list).

## Installation

 1. Upload the plugin ZIP via _Plugins  Add New  Upload Plugin_, or copy the `redkirin-
    calendar-flex-for-google-calendar` folder into `/wp-content/plugins/`.
 2. Activate the plugin.
 3. In Google Calendar, open the calendar’s settings, enable _Make available to public_
    and copy the _Public address in iCal format_.
 4. Go to _RedKirin Calendar Flex for Google Calendar  Add New_, paste the ICS URL,
    press _Test connection_, adjust the display options and save.
 5. Paste the shortcode shown on the edit screen into a post, page or shortcode widget.

## FAQ

### Why do new events not appear immediately?

Two caches are involved: Google regenerates public ICS feeds with a delay (often
several hours), and this plugin caches the downloaded data for 60 minutes by default.
Use _Refresh now_ on the calendar edit screen to clear the plugin cache.

### Can I show a private calendar?

No. Only public ICS addresses are supported. Making a calendar public in Google 
Calendar is required.

### Can I use ICS feeds from services other than Google?

By default only `calendar.google.com` and `www.google.com` are allowed for security
reasons. Developers can extend the list with the `rkgcf_allowed_ics_hosts` filter.

### How do I change the design?

Override the CSS custom properties on `.rk-calendar` (for example `--rk-calendar-
primary`, `--rk-calendar-border`, `--rk-calendar-radius`), target a single calendar
with `.rk-calendar-123`, choose a color theme, or turn off the base CSS and style
the stable `rk-calendar__*` classes yourself. A download button for the base stylesheet
is available on the edit screen.

### Can I change the HTML?

Yes. Copy any file from the plugin’s `templates/` folder into `your-theme/redkirin-
calendar-flex-for-google-calendar/` keeping the same relative path (for example `
parts/event.php`) and edit it there.

### What happens when the plugin is uninstalled?

Cached data is always removed. Calendars and settings are removed only if _Delete
all data on uninstall_ is enabled in the plugin settings.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“RedKirin Calendar Flex for Google Calendar” is open source software. The following
people have contributed to this plugin.

Contributors

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

“RedKirin Calendar Flex for Google Calendar” has been translated into 1 locale. 
Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/redkirin-calendar-flex-for-google-calendar/contributors)
for their contributions.

[Translate “RedKirin Calendar Flex for Google Calendar” into your language.](https://translate.wordpress.org/projects/wp-plugins/redkirin-calendar-flex-for-google-calendar)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/redkirin-calendar-flex-for-google-calendar/),
check out the [SVN repository](https://plugins.svn.wordpress.org/redkirin-calendar-flex-for-google-calendar/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/redkirin-calendar-flex-for-google-calendar/)
by [RSS](https://plugins.trac.wordpress.org/log/redkirin-calendar-flex-for-google-calendar/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.0.0**
 *  Last updated **5 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 *  Languages
 * [English (US)](https://wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/)
   and [Japanese](https://ja.wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/redkirin-calendar-flex-for-google-calendar)
 * Tags
 * [calendar](https://wordpress.org/plugins/tags/calendar/)[events](https://wordpress.org/plugins/tags/events/)
   [google calendar](https://wordpress.org/plugins/tags/google-calendar/)[ical](https://wordpress.org/plugins/tags/ical/)
   [ics](https://wordpress.org/plugins/tags/ics/)
 *  [Advanced View](https://wordpress.org/plugins/redkirin-calendar-flex-for-google-calendar/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/redkirin-calendar-flex-for-google-calendar/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/redkirin-calendar-flex-for-google-calendar/reviews/)

## Contributors

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

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/redkirin-calendar-flex-for-google-calendar/)