
內容簡介
WebCalendar 為您的 WordPress 網站提供一個簡潔且響應式的行事曆,具備重複事件、iCal 匯入、假日匯入、電子郵件提醒等實用功能,並且簡單易用。
【主要功能】
• 支援月、週、日視圖,無需重新載入頁面
• 重複事件管理,支援多種模式
• 一鍵匯入 .ics 檔案,支援多種來源
• 自訂事件欄位,滿足不同需求
• 事件衝突檢測,避免重疊事件
• 允許使用者邀請與事件提醒功能
外掛標籤
開發者團隊
原文外掛簡介
WebCalendar gives your WordPress site a clean, responsive calendar with the features you actually need — recurring events, iCal import, holiday imports, email reminders, and fine-grained permissions — without the complexity.
Calendar Views & Display
Month, week, and day views with smooth AJAX navigation — no page reloads
Responsive design that adapts to any theme and screen size
Color-coded categories for visual organization
Gutenberg blocks (Calendar + Upcoming Events) and [webcalendar] shortcode
Event Management
Recurring events — daily, weekly, monthly, and yearly patterns with RRULE support
Edit a single instance or the entire series
File attachments via the WordPress Media Library
Public, Private, and Confidential visibility levels
Filter the calendar by tag, and jump straight to what visitors are looking for
Venues and organizers — reusable places and contacts, managed in one screen, shown on every event page
Custom event fields — text, dates, drop-downs and more, defined once and filled in on every event
Online and hybrid events with a “Join online” link, separate from the physical location
Conflict detection warns you about overlapping events (Starter+)
Filter the calendar by venue and organizer (Starter+)
Import, Export & Sync
Import .ics files from Google Calendar, Outlook, Apple Calendar, or any iCal source
One-click migration from The Events Calendar — venues, organizers, categories, images and recurring events, with undo
Side-by-side trial: run WebCalendar next to The Events Calendar with scheduled one-way sync, then switch — or remove everything in one click
Export your calendar in iCalendar format
Import public holidays for any country
Subscribe to remote iCal feeds with automatic hourly sync (Starter+)
Collaboration & Permissions
Invite WordPress users to events with email notifications
Event reminders via WP-Cron
36 granular capabilities mapped to WordPress roles — control who can view, create, edit, and manage events
Multi-user calendar filtering and shared calendar views
Frontend event submissions with admin approval queue (Starter+)
Category merging for cleaning up duplicate categories (Business+)
SEO & Sharing
Single event pages with SEO-friendly permalinks
Schema.org Event JSON-LD, Open Graph, and Twitter Card meta tags
Social share buttons and “Add to Google/Outlook/Yahoo” one-click buttons
AI Integration
Built-in MCP server lets AI assistants (Claude, ChatGPT, etc.) manage your calendar — free on every edition
AI admin page with connection wizard, tools reference, and one-click testing
WordPress Abilities API integration for WP 6.9+
For Developers
Full REST API for events, categories, holidays, layers, and shared calendars
Built on Clean Architecture with webcalendar-core business logic library
PSR-4 autoloading, PHPStan Level 9, 1400+ automated tests
All calendar data in dedicated webcal_* tables — no Custom Post Types
Technical Note: Database Architecture
This plugin integrates webcalendar-core, a framework-agnostic Composer library that provides all calendar business logic (events, recurrence, iCal, permissions) through 17 repository classes. These repositories require PDO and use exclusively parameterized prepared statements — no raw SQL concatenation. WordPress-specific data (users, options, capabilities) is accessed via $wpdb through the plugin’s Bridge layer (WpUserRepository, WpConfigRepository, etc.). See src/Bridge/PdoFactory.php for the connection factory.
External Services
This plugin connects to the following third-party services:
Nager.Date API
Used for importing public holidays via WebCalendar > Holidays.
* Endpoint: https://date.nager.at/api/v3/
* Privacy Policy
Google Calendar Public Feeds
Alternative holiday source. Fetches public .ics files from Google.
* Endpoint: https://calendar.google.com/calendar/ical/
* Google Privacy Policy
* Google Terms of Service
Thunderbird Holiday Calendars
Alternative holiday source via community-maintained .ics files.
* Endpoint: https://www.thunderbird.net/media/caldata/
* Mozilla Privacy Policy
Freemius License Server
Used for license validation, automatic updates, and optional usage analytics.
* Endpoint: https://api.freemius.com/
* Privacy Policy
* Terms of Service
* Data transmitted: license key, site URL, plugin version, WordPress version
OpenStreetMap / Nominatim
When a single event page has a location and the map provider is set to OpenStreetMap
(the default), the plugin geocodes the address via the Nominatim API and displays a
map using OpenStreetMap tile servers. The event location string is sent as a search
query. No user personal data is transmitted.
* Geocoding endpoint: https://nominatim.openstreetmap.org/search
* Tile server: https://tile.openstreetmap.org/
* OpenStreetMap Terms of Use
* Nominatim Usage Policy
* OpenStreetMap Privacy Policy
Google Maps Embed API
When the map provider is set to Google Maps in settings, single event pages display
an embedded Google Map for the event location. The event location string and your
Google Maps API key are sent to Google. No other user data is transmitted.
* Endpoint: https://www.google.com/maps/embed/v1/place
* Google Maps Platform Terms of Service
* Google Privacy Policy
Add to Calendar Links
Single event pages include “Add to Calendar” buttons that generate links to Google
Calendar, Outlook.com, and Yahoo Calendar. When a visitor clicks a button, the event
title, date, time, location, and description are passed as URL parameters to the
chosen service. No data is sent until the visitor clicks.
* Google Calendar: https://www.google.com/calendar/render
* Outlook.com: https://outlook.live.com/calendar/0/action/compose
* Yahoo Calendar: https://calendar.yahoo.com/
Social Sharing Links
Single event pages include social sharing buttons for Facebook, X (Twitter), and
LinkedIn. When a visitor clicks a button, the event page URL and title are passed as
URL parameters to the chosen service. No data is sent until the visitor clicks.
* Facebook: https://www.facebook.com/sharer/sharer.php
* X (Twitter): https://x.com/intent/tweet
* LinkedIn: https://www.linkedin.com/sharing/share-offsite/
Development & Source Code
Full unminified source for this plugin is included in this distribution under GPL-2.0-or-later — you do not need to download anything external to rebuild the compiled assets.
What ships in this zip:
src/ — unminified React/JSX source for all admin components, frontend calendar, and the mini-calendar widget
build/ — the pre-compiled minified bundles (what the plugin actually loads at runtime)
package.json + package-lock.json — Node build manifest and lockfile for reproducible npm install
composer.json — PHP dependency manifest
Rebuilding the compiled assets from source:
Prerequisites: PHP 8.1 or higher with Composer 2, Node.js 20 or higher with npm 10.
composer install — install PHP dependencies
npm install — install JavaScript build dependencies (@wordpress/scripts, React, Toast UI Calendar, Leaflet, Tiptap)
npm run build — compile src/index.js and src/frontend.js into the minified bundles under build/
The compiled output in build/ is byte-reproducible from the matching src/ at the same version using this toolchain.
