[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$ffoj5VEy_LjRnX-2SeSREYXTZEFUkQ91pEjIjGr8_bjw":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":29,"last_vuln_date":30,"fetched_at":31,"vulnerabilities":32,"developer":93,"crawl_stats":38,"alternatives":99,"analysis":201,"fingerprints":1060},"booking-manager","Booking Manager – Sync WP Booking Calendar – Import Events, Export Bookings to ICS Calendar","2.1.18","wpdevelop","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpdevelop\u002F","\u003Cp>Booking Manager plugin can easily show list of events in customizable way from external .ics feeds at your website.\u003Cbr \u002F>\nBooking Manager have native integration with \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbooking\u002F\" rel=\"ugc\">Booking Calendar\u003C\u002Fa>\u003C\u002Fstrong> plugin.\u003Cbr \u002F>\nIt can sync bookings from \u003Cstrong>Booking Calendar\u003C\u002Fstrong> with different sources (Airbnb, Booking.com, HomeAway, TripAdvisor, VRBO, FlipKey and any other calendar that uses .ics format).\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Foplugins.com\u002Fplugins\u002Fbooking-manager\u002F\" title=\"Booking Manager Homepage\" rel=\"nofollow ugc\">Plugin Homepage\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Foplugins.com\u002Fplugins\u002Fbooking-manager\u002F#faq\" title=\"Support\" rel=\"nofollow ugc\">Support\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>Booking Manager IS GREAT FOR\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Listing of upcoming events at your website from .ics feeds\u003C\u002Fli>\n\u003Cli>Sync bookings from different sources with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbooking\u002F\" rel=\"ugc\">Booking Calendar\u003C\u002Fa> plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>FEATURES\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>List of events from external .ics feeds.\u003C\u002Fli>\n\u003Cli>Ability to upload .ics file(s) to your website and use it.\u003C\u002Fli>\n\u003Cli>Customization of events listing template – it’s how events showing at front-end side of your website.\u003C\u002Fli>\n\u003Cli>Easily inserting shortcode for events listing into any post or page via popup dialog, where you can select different parameters.\u003C\u002Fli>\n\u003Cli>Setting different parameters for events listing, like “start from” and “finish to” dates, etc…\u003C\u002Fli>\n\u003Cli>Native integration with \u003Cstrong>Booking Calendar\u003C\u002Fstrong> plugin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Sync bookings\u003C\u002Fstrong> from Booking Calendar with different sources (Airbnb, Booking.com, HomeAway, TripAdvisor, VRBO, FlipKey and any other calendar that uses .ics format).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import .ics\u003C\u002Fstrong> feeds (files) into Booking Calendar. Its useful, if you need to import bookings from multiple external websites into one calendar in Booking Calendar plugin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Export .ics\u003C\u002Fstrong> feeds (files) from Booking Calendar. You can publish bookings from Booking Calendar as .ics feeds at  different pages, and then import such  bookings in your other different website, like Airbnb.\u003C\u002Fli>\n\u003Cli>Configure URLs for pages where you want to publish your ics feeds.\u003C\u002Fli>\n\u003Cli>Mobile friendly.\u003C\u002Fli>\n\u003C\u002Ful>\n","Showing events listing from .ics feeds or sync bookings from different sources to your website",5000,167880,80,2,"2025-12-03T09:48:00.000Z","6.9.4","4.0","5.6",[20,21,22,23,24],"booking-calendar","events","google-calendar","icalendar","ics","https:\u002F\u002Foplugins.com\u002Fplugins\u002Fbooking-manager","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbooking-manager.2.1.18.zip",93,4,0,"2025-11-04 00:00:00","2026-03-15T15:16:48.613Z",[33,48,63,79],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":6,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":30,"updated_date":44,"references":45,"days_to_patch":47},"CVE-2025-64275","booking-manager-authenticated-contributor-stored-cross-site-scripting","Booking Manager \u003C= 2.1.17 - Authenticated (Contributor+) Stored Cross-Site Scripting","The Booking Manager plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.1.17 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.",null,"\u003C=2.1.17","medium",6.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2025-11-17 18:14:36",[46],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fa7131704-4803-492a-aae7-17a8ab33282f?source=api-prod",14,{"id":49,"url_slug":50,"title":51,"description":52,"plugin_slug":4,"theme_slug":38,"affected_versions":53,"patched_in_version":54,"severity":40,"cvss_score":55,"cvss_vector":56,"vuln_type":57,"published_date":58,"updated_date":59,"references":60,"days_to_patch":62},"CVE-2025-10124","booking-manager-sync-wp-booking-calendar-import-events-export-bookings-to-ics-calendar-authenticated-contributor-booking","Booking Manager – Sync WP Booking Calendar – Import Events, Export Bookings to ICS Calendar \u003C= 2.1.14 - Authenticated (Contributor+) Booking Deletion","The Booking Manager – Sync WP Booking Calendar – Import Events, Export Bookings to ICS Calendar plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the 'booking-manager-delete' shortcode in all versions up to, and including, 2.1.14. This makes it possible for unauthenticated attackers to delete bookings.","\u003C=2.1.14","2.1.15",5.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Missing Authorization","2025-09-19 00:00:00","2025-10-16 14:03:16",[61],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fbc9e728a-5aae-487c-bd17-e78141084f10?source=api-prod",28,{"id":64,"url_slug":65,"title":66,"description":67,"plugin_slug":4,"theme_slug":38,"affected_versions":68,"patched_in_version":69,"severity":70,"cvss_score":71,"cvss_vector":72,"vuln_type":73,"published_date":74,"updated_date":75,"references":76,"days_to_patch":78},"CVE-2023-50840","booking-manager-authenticatedcontributor-sql-injection-via-shortcode","Booking Manager \u003C= 2.1.5 - Authenticated(Contributor+) SQL Injection via Shortcode","The Booking Manager plugin for WordPress is vulnerable to SQL Injection via the plugin's shortcode attributes in all versions up to 2.1.6 (exclusive) due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query.  This makes it possible for authenticated attackers, with contributor access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.","\u003C2.1.6","2.1.6","high",8.8,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:H\u002FI:H\u002FA:H","Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')","2023-12-21 00:00:00","2024-01-22 19:56:02",[77],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F9829ec10-ad37-4345-b4d6-cd0429b2d8f7?source=api-prod",33,{"id":80,"url_slug":81,"title":82,"description":83,"plugin_slug":4,"theme_slug":38,"affected_versions":84,"patched_in_version":85,"severity":40,"cvss_score":86,"cvss_vector":87,"vuln_type":88,"published_date":89,"updated_date":75,"references":90,"days_to_patch":92},"CVE-2023-1977","booking-manager-authenticated-subscriber-server-side-request-forgery","Booking Manager \u003C= 2.0.28 - Authenticated (Subscriber+) Server-Side Request Forgery","The Booking Manager plugin for WordPress is vulnerable to Server-Side Request Forgery in versions up to, and including, 2.0.28 via the wpbm_get_ssl_page_content() function. This can allow authenticated attackers with subscriber-level permissions and above to make web requests to arbitrary locations originating from the web application and can be used to query and modify information from internal services.","\u003C=2.0.28","2.0.29",6.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:L\u002FI:L\u002FA:L","Server-Side Request Forgery (SSRF)","2023-04-26 00:00:00",[91],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fa9ee709d-6590-4c07-9788-6150733c1691?source=api-prod",272,{"slug":7,"display_name":7,"profile_url":8,"plugin_count":94,"total_installs":95,"avg_security_score":27,"avg_patch_time_days":96,"trust_score":97,"computed_at":98},25,58990,437,74,"2026-04-04T02:41:58.564Z",[100,123,142,158,177],{"slug":101,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":110,"num_ratings":111,"last_updated":112,"tested_up_to":16,"requires_at_least":113,"requires_php":114,"tags":115,"homepage":118,"download_link":119,"security_score":120,"vuln_count":121,"unpatched_count":29,"last_vuln_date":122,"fetched_at":31},"ics-calendar","ICS Calendar","12.0.5.1","Room 34 Creative Services, LLC","https:\u002F\u002Fprofiles.wordpress.org\u002Froom34\u002F","\u003Cp>Add the calendar you already use to Any WordPress site! Google Calendar, Microsoft 365, iCloud, Airbnb and more… no API keys or complicated setup required.\u003C\u002Fp>\n\u003Cp>Using a simple shortcode, you can turn any iCalendar subscription (ICS) feed (Google Calendar, Microsoft Office 365, Apple iCloud, Airbnb, Vrbo, and many more) into a seamlessly integrated, auto-updating, zero-maintenance WordPress calendar.\u003C\u002Fp>\n\u003Cp>Continue to manage your events in the calendar software you’re already using! You’ll automatically have an up-to-date calendar in your WordPress website with no extra work.\u003C\u002Fp>\n\u003Cp>Display your calendar in month, list or week view. Many additional customization options are available. See our \u003Ca href=\"https:\u002F\u002Ficscalendar.com\u002Fuser-guide\u002F\" rel=\"nofollow ugc\">User Guide\u003C\u002Fa> for full details.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>No API keys required!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Works with ANY calendar software\u003C\u002Fstrong> that generates a public iCalendar subscription link.\u003C\u002Fp>\n\u003Ch4>Live Preview\u003C\u002Fh4>\n\u003Cp>You can preview your own calendar in any ICS Calendar view at our website: \u003Ca href=\"https:\u002F\u002Ficscalendar.com\u002Fpreview\u002F\" rel=\"nofollow ugc\">icscalendar.com\u002Fpreview\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Shortcode Builder\u003C\u002Fh4>\n\u003Cp>We’ve made it easier than ever to get started using ICS Calendar with our new online shortcode builder: \u003Ca href=\"https:\u002F\u002Ficscalendar.com\u002Fshortcode-builder\u002F\" rel=\"nofollow ugc\">icscalendar.com\u002Fshortcode-builder\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Language Support\u003C\u002Fh4>\n\u003Cp>All date strings (days of the week, months, etc.) are automatically translated into your site’s configured language (under \u003Cstrong>Settings > General > Language\u003C\u002Fstrong>) and date\u002Ftime formats using core WordPress functionality. All text content for the calendar itself is displayed as-is from the feed.\u003C\u002Fp>\n\u003Cp>ICS Calendar includes built-in translation files for the following languages: Chinese, Czech, Danish, Dutch, Estonian, Finnish, French, German, Greek, Hungarian, Italian, Japanese, Korean, Latvian, Lithuanian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Turkish, and Ukrainian.\u003C\u002Fp>\n\u003Cp>Please contact us if you would like us to add support for your language!\u003C\u002Fp>\n\u003Cp>\u003Cem>This plugin includes the PHP ICS Parser library by Jonathan Goode, John Grogg and Martin Thoma (MIT license).\u003C\u002Fem>\u003C\u002Fp>\n","Add the calendar you already use to Any WordPress site! Google Calendar, Microsoft 365, iCloud and more… no API keys or complicated setup required.",10000,1740067,98,71,"2026-03-11T17:55:00.000Z","4.9","7.2",[21,22,23,116,117],"ics-feed","office-365","https:\u002F\u002Ficscalendar.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fics-calendar.12.0.5.1.zip",99,1,"2023-10-26 00:00:00",{"slug":124,"name":125,"version":126,"author":127,"author_profile":128,"description":129,"short_description":130,"active_installs":131,"downloaded":132,"rating":133,"num_ratings":121,"last_updated":134,"tested_up_to":16,"requires_at_least":135,"requires_php":136,"tags":137,"homepage":140,"download_link":141,"security_score":133,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"hydrogen-calendar-embeds","Hydrogen Calendar Embeds","3.0.1","LBell","https:\u002F\u002Fprofiles.wordpress.org\u002Flbell\u002F","\u003Cp>This completely free, extremely light-weight plugin with explosive potential embeds \u003Cstrong>ANY\u003C\u002Fstrong> iCal (.ics) calendar into your WordPress site using the beautiful, time-tested FullCalendar library.\u003C\u002Fp>\n\u003Cp>Nothing is hidden behind a “pro” upgrade. All features are free.\u003C\u002Fp>\n\u003Cp>Works with any public ICS\u002FiCal feed:\u003Cbr \u002F>\n  – Google Calendar\u003Cbr \u002F>\n  – iCloud\u003Cbr \u002F>\n  – Outlook\u003Cbr \u002F>\n  – Airbnb\u003Cbr \u002F>\n  – \u003Cstrong>Pretty much anything that can output an ICS feed\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Just add the new Hydrogen Calendar Embeds block, copy in your ical address(s), and BAM! a modern, responsive, beautiful calendar.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Need two calendars in one? We got you. \u003C\u002Fli>\n\u003Cli>Need multiple different calendars on the page? Easy peasy. \u003C\u002Fli>\n\u003Cli>Prefer another color or style? We’ve got CSS classes for days.\u003C\u002Fli>\n\u003Cli>Need different functionality? It’s developer friendly, completely extendable, and infinitely customizable.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Highlights:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Manage events using any external calendar of your choice\u003C\u002Fli>\n\u003Cli>Combine multiple ICS feeds into one calendar\u003C\u002Fli>\n\u003Cli>Embed multiple calendars on one page\u003C\u002Fli>\n\u003Cli>Lots of view options (Grid, Month List, Day List, Year List)\u003C\u002Fli>\n\u003Cli>Locale support\u003C\u002Fli>\n\u003Cli>Lots of customization options (and ability to add more)\u003C\u002Fli>\n\u003Cli>Lightweight and fast\u003C\u002Fli>\n\u003Cli>Responsive design\u003C\u002Fli>\n\u003Cli>Easy setup using WordPress Block or Shortcodes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>NO API KEYS REQUIRED\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Contributing\u003C\u002Fh3>\n\u003Cp>Contributions are welcome! Please feel free to submit a Pull Request to the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flbell\u002Fhydrogen-calendar-embeds\" rel=\"nofollow ugc\">GitHub repository\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For support, feature requests, or bug reports, please visit the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flbell\u002Fhydrogen-calendar-embeds\" rel=\"nofollow ugc\">GitHub repository\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You can also sponsor development at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsponsors\u002Flbell\" rel=\"nofollow ugc\">GitHub Sponsors\u003C\u002Fa>.\u003C\u002Fp>\n","The free, simple, lightweight way to embed beautiful, fully customizable ICS calendars into your WordPress site.",500,1501,100,"2026-01-08T17:08:00.000Z","5.8","7.4",[138,139,21,22,24],"calendar","embed","https:\u002F\u002Fgithub.com\u002Flbell\u002Fhydrogen-calendar-embeds","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fhydrogen-calendar-embeds.3.0.1.zip",{"slug":143,"name":144,"version":145,"author":146,"author_profile":147,"description":148,"short_description":149,"active_installs":150,"downloaded":151,"rating":29,"num_ratings":29,"last_updated":152,"tested_up_to":16,"requires_at_least":153,"requires_php":136,"tags":154,"homepage":156,"download_link":157,"security_score":133,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"evtcal-add-to-calendar","Event – Add to Calendar","1.0.0","melonwebstudio","https:\u002F\u002Fprofiles.wordpress.org\u002Fmelonwebstudio\u002F","\u003Cp>Event – Add to Calendar is a powerful and user-friendly WordPress plugin that allows your website visitors to add events to their preferred calendar service with a single click. Perfect for event websites, business sites, webinars, workshops, and any site that promotes events. Everything you need to share your events, schedules, calendars, and appointments—so your audience can easily add them to their calendar and never miss an important moment.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Multiple Calendar Services\u003C\u002Fstrong> – Supports Google Calendar, Outlook, Office 365, Yahoo Calendar, and Apple Calendar (.ics)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Easy Implementation\u003C\u002Fstrong> – Simple shortcode that can be added to any post, page, or widget\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fully Customizable\u003C\u002Fstrong> – Configure event title, description, location, date\u002Ftime, and timezone\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Customizable Button Colors\u003C\u002Fstrong> – Match your site’s design with custom button colors\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Responsive Design\u003C\u002Fstrong> – Beautiful dropdown menu that works perfectly on desktop and mobile devices\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Accessible\u003C\u002Fstrong> – Built with WCAG 2.1 accessibility standards (ARIA labels, keyboard navigation)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Secure\u003C\u002Fstrong> – Includes nonce verification and proper input sanitization\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fast & Lightweight\u003C\u002Fstrong> – No external dependencies or API calls\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Translation Ready\u003C\u002Fstrong> – Fully internationalized and ready for translations\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Developer Friendly\u003C\u002Fstrong> – Clean, well-documented code following WordPress coding standards\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Admin Dashboard\u003C\u002Fstrong> – Easy-to-use settings page with color picker and service toggles\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Supported Calendar Services\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Google Calendar\u003C\u002Fstrong> – Direct integration with Google Calendar\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Office 365\u003C\u002Fstrong> – Microsoft Office 365 Calendar integration\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Outlook.com\u003C\u002Fstrong> – Outlook web calendar integration\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Yahoo Calendar\u003C\u002Fstrong> – Yahoo Calendar integration\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Apple Calendar & Outlook Desktop\u003C\u002Fstrong> – Universal .ics file download compatible with:\n\u003Cul>\n\u003Cli>Apple Calendar (macOS\u002FiOS)\u003C\u002Fli>\n\u003Cli>Microsoft Outlook (Desktop application)\u003C\u002Fli>\n\u003Cli>Mozilla Thunderbird\u003C\u002Fli>\n\u003Cli>Any calendar application that supports .ics files\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Use Cases\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Event promotion and registration\u003C\u002Fli>\n\u003Cli>Workshop and webinar scheduling\u003C\u002Fli>\n\u003Cli>Business appointments and consultations\u003C\u002Fli>\n\u003Cli>Community events and meetups\u003C\u002Fli>\n\u003Cli>Educational sessions and classes\u003C\u002Fli>\n\u003Cli>Conference and seminar scheduling\u003C\u002Fli>\n\u003Cli>Online and in-person events\u003C\u002Fli>\n\u003Cli>Product launches and sales events\u003C\u002Fli>\n\u003Cli>Nonprofit fundraisers and galas\u003C\u002Fli>\n\u003Cli>Sports events and tournaments\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Privacy First\u003C\u002Fh4>\n\u003Cp>This plugin respects your privacy and your users’ privacy:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>No tracking or analytics\u003C\u002Fli>\n\u003Cli>No personal data collection\u003C\u002Fli>\n\u003Cli>No cookies used\u003C\u002Fli>\n\u003Cli>No external API calls\u003C\u002Fli>\n\u003Cli>All processing happens on your server\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Ch4>Basic Usage\u003C\u002Fh4>\n\u003Cp>Add this shortcode to any post, page, or widget:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[evtcal_add_to_calendar]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Advanced Usage\u003C\u002Fh4>\n\u003Cp>Customize all event details:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[evtcal_add_to_calendar\n    title=\"Annual Company Conference 2025\"\n    description=\"Join us for our biggest event of the year with industry leaders and networking opportunities.\"\n    location=\"Grand Conference Center, New York, NY\"\n    start=\"2025-09-15 09:00:00\"\n    end=\"2025-09-15 17:00:00\"\n    timezone=\"America\u002FNew_York\"\n    label=\"Add to My Calendar\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Shortcode Attributes\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>title\u003C\u002Fstrong> – Event title (default: “My Event”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>description\u003C\u002Fstrong> – Event description (default: “Join us for an amazing event”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>location\u003C\u002Fstrong> – Event location (default: “Event Venue”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>start\u003C\u002Fstrong> – Start date and time in format YYYY-MM-DD HH:MM:SS (default: “2025-11-15 10:00:00”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>end\u003C\u002Fstrong> – End date and time in format YYYY-MM-DD HH:MM:SS (default: “2025-11-15 12:00:00”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>timezone\u003C\u002Fstrong> – PHP timezone identifier (default: “America\u002FLos_Angeles”)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>label\u003C\u002Fstrong> – Button text (default: “Add to Calendar”)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Timezone Examples\u003C\u002Fh4>\n\u003Cp>Use standard PHP timezone identifiers:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>America\u002FNew_York – Eastern Time\u003C\u002Fli>\n\u003Cli>America\u002FChicago – Central Time\u003C\u002Fli>\n\u003Cli>America\u002FDenver – Mountain Time\u003C\u002Fli>\n\u003Cli>America\u002FLos_Angeles – Pacific Time\u003C\u002Fli>\n\u003Cli>America\u002FPhoenix – Arizona Time\u003C\u002Fli>\n\u003Cli>Europe\u002FLondon – GMT\u002FBST\u003C\u002Fli>\n\u003Cli>Europe\u002FParis – CET\u002FCEST\u003C\u002Fli>\n\u003Cli>Asia\u002FTokyo – JST\u003C\u002Fli>\n\u003Cli>Australia\u002FSydney – AEST\u002FAEDT\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.php.net\u002Fmanual\u002Fen\u002Ftimezones.php\" rel=\"nofollow ugc\">View complete timezone list\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>PHP Usage\u003C\u002Fh4>\n\u003Cp>You can also use the shortcode in your PHP templates:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php echo do_shortcode('[evtcal_add_to_calendar]'); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Or with dynamic content:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php\n$event_shortcode = sprintf(\n    '[evtcal_add_to_calendar title=\"%s\" start=\"%s\" end=\"%s\"]',\n    esc_attr($event_title),\n    esc_attr($start_datetime),\n    esc_attr($end_datetime)\n);\necho do_shortcode($event_shortcode);\n?>\u003Ch3>Additional Information\u003C\u002Fh3>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Browser Compatibility\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Chrome (latest)\u003C\u002Fli>\n\u003Cli>Firefox (latest)\u003C\u002Fli>\n\u003Cli>Safari (latest)\u003C\u002Fli>\n\u003Cli>Edge (latest)\u003C\u002Fli>\n\u003Cli>Opera (latest)\u003C\u002Fli>\n\u003Cli>Mobile browsers (iOS Safari, Chrome Mobile, Samsung Internet)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Technical Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 5.0 or higher\u003C\u002Fli>\n\u003Cli>PHP 7.4 or higher\u003C\u002Fli>\n\u003Cli>Modern browser with JavaScript enabled\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Credits\u003C\u002Fh4>\n\u003Cp>Developed by Melon Web Studio\u003Cbr \u002F>\nWebsite: https:\u002F\u002Fwww.melonwebstudio.com\u003C\u002Fp>\n\u003Ch4>Support Our Development\u003C\u002Fh4>\n\u003Cp>If you find this plugin helpful, please consider:\u003Cbr \u002F>\n* Leaving a 5-star review\u003Cbr \u002F>\n* Sharing with friends and colleagues\u003Cbr \u002F>\n* Supporting us via PayPal\u003C\u002Fp>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>Event – Add to Calendar does not:\u003Cbr \u002F>\n* Track users\u003Cbr \u002F>\n* Store personal information\u003Cbr \u002F>\n* Use cookies\u003Cbr \u002F>\n* Send data to external servers\u003Cbr \u002F>\n* Collect analytics\u003Cbr \u002F>\n* Require user registration\u003C\u002Fp>\n\u003Cp>All calendar generation and downloads happen locally on your WordPress installation.\u003C\u002Fp>\n\u003Cp>The plugin creates links to third-party calendar services only when users voluntarily choose to add events to their calendars.\u003C\u002Fp>\n\u003Ch3>Developer Information\u003C\u002Fh3>\n\u003Ch4>Hooks & Filters\u003C\u002Fh4>\n\u003Cp>Currently, the plugin doesn’t expose custom hooks and filters, but they may be added in future versions based on user feedback.\u003C\u002Fp>\n\u003Ch4>File Structure\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>\u002Fassets\u002Fcss\u002F\u003C\u002Fcode> – Stylesheet files\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u002Fassets\u002Fjs\u002F\u003C\u002Fcode> – JavaScript files\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u002Fassets\u002Fimages\u002F\u003C\u002Fcode> – Calendar service icons\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u002Fincludes\u002F\u003C\u002Fcode> – PHP class files\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u002Ftemplates\u002F\u003C\u002Fcode> – Template files\u003C\u002Fli>\n\u003Cli>\u003Ccode>\u002Flanguages\u002F\u003C\u002Fcode> – Translation files\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>CSS Classes\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>.evtcal\u003C\u002Fcode> – Main container\u003C\u002Fli>\n\u003Cli>\u003Ccode>.evtcal-btn\u003C\u002Fcode> – Calendar button\u003C\u002Fli>\n\u003Cli>\u003Ccode>.evtcal-dropdown\u003C\u002Fcode> – Dropdown menu\u003C\u002Fli>\n\u003Cli>\u003Ccode>.evtcal-arrow\u003C\u002Fcode> – Arrow icon\u003C\u002Fli>\n\u003Cli>\u003Ccode>.evtcal.active\u003C\u002Fcode> – Active state\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Contributing\u003C\u002Fh4>\n\u003Cp>We welcome contributions! Please contact us at support@melonwebstudio.com if you’d like to contribute to the development of this plugin.\u003C\u002Fp>\n\u003Ch4>Support\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Documentation: https:\u002F\u002Fwww.melonwebstudio.com\u002Fdocs\u003C\u002Fli>\n\u003Cli>Email: support@melonwebstudio.com\u003C\u002Fli>\n\u003Cli>WordPress Forum: https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fevent-add-to-calendar\u002F\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Third Party Services\u003C\u002Fh3>\n\u003Cp>This plugin creates links to the following third-party calendar services when users choose to add events:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Google Calendar\u003C\u002Fstrong> – https:\u002F\u002Fcalendar.google.com\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fprivacy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fterms\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Microsoft Outlook\u002FOffice 365\u003C\u002Fstrong> – https:\u002F\u002Foutlook.com and https:\u002F\u002Foutlook.office.com\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fprivacy.microsoft.com\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwww.microsoft.com\u002Fservicesagreement\u002F\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Yahoo Calendar\u003C\u002Fstrong> – https:\u002F\u002Fcalendar.yahoo.com\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Flegal.yahoo.com\u002Fus\u002Fen\u002Fyahoo\u002Fprivacy\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Flegal.yahoo.com\u002Fus\u002Fen\u002Fyahoo\u002Fterms\u002Fotos\u002F\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>These links are opened in new tabs and the plugin does not send any data to these services. Users choose to add events to their calendars voluntarily. No API keys or authentication is required.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under GPLv2 or later.\u003C\u002Fp>\n\u003Cp>Copyright 2025 Melon Web Studio\u003C\u002Fp>\n\u003Cp>This program is free software; you can redistribute it and\u002For modify\u003Cbr \u002F>\nit under the terms of the GNU General Public License as published by\u003Cbr \u002F>\nthe Free Software Foundation; either version 2 of the License, or\u003Cbr \u002F>\n(at your option) any later version.\u003C\u002Fp>\n\u003Cp>This program is distributed in the hope that it will be useful,\u003Cbr \u002F>\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\u003Cbr \u002F>\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\u003Cbr \u002F>\nGNU General Public License for more details.\u003C\u002Fp>\n\u003Cp>You should have received a copy of the GNU General Public License\u003Cbr \u002F>\nalong with this program; if not, write to the Free Software\u003Cbr \u002F>\nFoundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\u003C\u002Fp>\n","Add customizable \"Add to Calendar\" buttons to your WordPress site with support for Google Calendar, Outlook, Apple Calendar, and more.",20,149,"2026-01-18T18:19:00.000Z","5.0",[155,138,21,22,24],"add-to-calendar","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fevtcal-add-to-calendar","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fevtcal-add-to-calendar.1.0.0.zip",{"slug":159,"name":160,"version":161,"author":7,"author_profile":8,"description":162,"short_description":163,"active_installs":164,"downloaded":165,"rating":166,"num_ratings":167,"last_updated":168,"tested_up_to":16,"requires_at_least":169,"requires_php":18,"tags":170,"homepage":173,"download_link":174,"security_score":175,"vuln_count":62,"unpatched_count":29,"last_vuln_date":176,"fetched_at":31},"booking","Booking Calendar","10.14.16","\u003Ch4>The #1 must have Booking Plugin for WordPress\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>WP Booking Calendar\u003C\u002Fstrong> is the original \u003Cstrong>WordPress booking plugin\u003C\u002Fstrong>, powering thousands of websites since 2009. Add a beautiful, responsive booking calendar to your site to accept \u003Cstrong>online reservations\u003C\u002Fstrong>, manage \u003Cstrong>appointments\u003C\u002Fstrong>, and schedule \u003Cstrong>events\u003C\u002Fstrong> — all from an intuitive admin panel. It’s a complete solution for rental bookings, service appointments, event scheduling, and more.\u003C\u002Fp>\n\u003Cp>Plugin provides an \u003Cstrong>easy-to-use\u003C\u002Fstrong> booking system for displaying \u003Cstrong>calendar availability\u003C\u002Fstrong>, receive bookings from your website visitors, and manage bookings through a \u003Cstrong>modern and clean booking admin panel\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>Moreover, with the ability to \u003Cstrong>sync bookings\u003C\u002Fstrong> with other services Booking Calendar offers you be up-to-date to avoid duplicate bookings.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F\" title=\"Features Overview of Booking Calendar\" rel=\"nofollow ugc\">Features\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Fdemo\u002F\" title=\"Live demos of premium versions\" rel=\"nofollow ugc\">See Demos\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002FFAQ\u002F\" title=\"Booking Calendar - FAQ\" rel=\"nofollow ugc\">FAQ\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Fhelp\u002F\" title=\"Youtube Video Tutorials\" rel=\"nofollow ugc\">Video Guides\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Fsupport\u002F\" title=\"Get support for Booking Calendar plugin\" rel=\"nofollow ugc\">Get Support\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>New Setup Wizard!\u003C\u002Fh4>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Easy Time Appointments Configuration for your Bookings\u003C\u002Fstrong>\u003Cbr \u002F>\n  Set up \u003Cstrong>appointment booking system\u003C\u002Fstrong> in less than 2.5 minutes. Designed with a user-friendly flow, the wizard takes you step-by-step through key settings, including booking type selection, calendar appearance, availability preferences, and more. This step-by-step setup helps you get your booking system ready for your business quickly and easily.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FGYJWZJBFwXw?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Full Day Bookings – Setup Wizard\u003C\u002Fstrong>\u003Cbr \u002F>\n  Easily configure Booking Calendar for full-day bookings with the new step-by-step Setup Wizard. Get your booking system ready for full day bookings in just a few minutes.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FNJ88lGD5iJ0?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Changeover Multi-Day Bookings – Setup Wizard (Pro)\u003C\u002Fstrong>\u003Cbr \u002F>\n  Configure multi-day bookings with specific check-in and check-out days, clearly marked with diagonal or vertical lines. Perfect for bookings that require split days. \u003Cbr \u002F>\u003Cstrong>Available Pro versions\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FuCQ9JmHR8w4?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch4>Perfect solution for any booking logic\u003C\u002Fh4>\n\u003Cp>As the first booking system for WordPress, we have created a huge number of features to match your specific booking needs.\u003C\u002Fp>\n\u003Cp>Easily \u003Cstrong>define available dates\u003C\u002Fstrong> and allow your visitors to \u003Cstrong>reserve\u003C\u002Fstrong> your property or service for a \u003Cstrong>full day\u003C\u002Fstrong> or \u003Cstrong>time-slot\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>For those who need more advanced functionality, our premium versions offer an extensive system with \u003Cstrong>multiple resources\u003C\u002Fstrong>, \u003Cstrong>seasonal prices\u003C\u002Fstrong>, \u003Cstrong>conditional dates\u003C\u002Fstrong> selection, \u003Cstrong>availability search\u003C\u002Fstrong>, and even a \u003Cstrong>multi-user system\u003C\u002Fstrong> where users can independently manage their own availability, much like an Airbnb portal.\u003C\u002Fp>\n\u003Ch4>Booking Calendar is great for\u003C\u002Fh4>\n\u003Cp>Whether you’re renting a property or you’re a sole business owner looking to automate your service bookings, Booking Calendar can help you.\u003Cbr \u002F>\n– Resource scheduling (bed & breakfast, houses, apartments, etc.)\u003Cbr \u002F>\n– Client scheduling (photographers, lawyers, beauty salons, spas, etc.)\u003Cbr \u002F>\n– Meeting scheduling (coaching, phone advice)\u003Cbr \u002F>\n– Patient scheduling (doctor, dentists, clinic, medical)\u003Cbr \u002F>\n– Equipment rentals (yachts, boats, cars, bikes, technics, etc.)\u003Cbr \u002F>\n– Event scheduling (conference, course, fitness center, yoga class, gym)\u003Cbr \u002F>\n– Or any other service where booking for a specific time is required\u003C\u002Fp>\n\u003Ch3>Simple steps to get started\u003C\u002Fh3>\n\u003Ch4>1. Add booking form or availability calendar to your page\u003C\u002Fh4>\n\u003Cp>Easily insert the booking form on any page of your website using WordPress blocks or Booking Calendar widgets for sidebars or configure shortcode block in page builders like Elementor. Read more \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Finsert-booking-calendar-into-page\u002F\" title=\"How to insert the booking form or availability calendar into the page?\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>2. Set initial unavailable days with just few clicks\u003C\u002Fh4>\n\u003Cp>You can \u003Cstrong>define days availability\u003C\u002Fstrong> in just a 3 mouse clicks at Booking > Availability page. Simply select a range of days on the calendar, choose ‘available’ or ‘unavailable’ status, and apply. It’s that simple!\u003C\u002Fp>\n\u003Ch4>3. Configure booking form, email templates and other settings\u003C\u002Fh4>\n\u003Cp>Easily \u003Cstrong>customize\u003C\u002Fstrong> your \u003Cstrong>booking form\u003C\u002Fstrong> fields and add \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002F-pOTMiyp6Q8?t=28s\" title=\"Video guide how to configure time slots in Booking Calendar Free version\" rel=\"nofollow ugc\">time slots\u003C\u002Fa>\u003C\u002Fstrong> if needed. Configure \u003Cstrong>email\u003C\u002Fstrong> notifications and other settings such as the \u003Cstrong>calendar\u003C\u002Fstrong> appearance, booking admin panel functionality, and more…\u003C\u002Fp>\n\u003Ch4>4. Receive notifications and manage bookings\u003C\u002Fh4>\n\u003Cp>Get notified about a \u003Cstrong>new appointments\u003C\u002Fstrong> and manage them in a modern admin panel. \u003Cstrong>Approve\u003C\u002Fstrong>, \u003Cstrong>decline\u003C\u002Fstrong>, or \u003Cstrong>edit\u003C\u002Fstrong> specific bookings. Plus, you can get a complete picture of your schedule with the \u003Cstrong>calendar overview\u003C\u002Fstrong> in \u003Cstrong>day\u003C\u002Fstrong>, \u003Cstrong>week\u003C\u002Fstrong>, or \u003Cstrong>month\u003C\u002Fstrong> view mode.\u003C\u002Fp>\n\u003Ch4>5. Configure syncing of bookings with other services\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Import\u003C\u002Fstrong> your \u003Cstrong>Google Calendar\u003C\u002Fstrong> events or make \u003Cstrong>2 ways sync\u003C\u002Fstrong> of your events by using \u003Cstrong>.ics feeds\u003C\u002Fstrong> with various services such as Airbnb, Booking.com, VRBO, HomeAway, TripAdvisor, FlipKey, and more… Thanks to native integration with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbooking-manager\u002F\" rel=\"ugc\">Booking Manager\u003C\u002Fa> plugin.\u003C\u002Fp>\n\u003Ch3>How it works?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Step 1:\u003C\u002Fstrong> Visitor select desired date(s) in calendar\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Step 2:\u003C\u002Fstrong> Visitor selects a time-slot (optional)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Step 3:\u003C\u002Fstrong> Visitor fills in Booking Form and submits it\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Step 4:\u003C\u002Fstrong> You receive a notification and manage the booking\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Awesome features:\u003C\u002Fh3>\n\u003Ch4>New\u003C\u002Fh4>\n\u003Cp>Super \u003Cstrong>easy set available\u002Funavailable dates\u003C\u002Fstrong> in calendar with just three mouse clicks.\u003C\u002Fp>\n\u003Cp>In Booking Calendar you can define days as available or unavailable in just a few clicks. Simply select a range of days on the calendar, choose ‘available’ or ‘unavailable’ status, and apply. It’s that simple!\u003C\u002Fp>\n\u003Ch4>General\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Modern\u003C\u002Fstrong> and \u003Cstrong>easy to use\u003C\u002Fstrong> interface.\u003C\u002Fli>\n\u003Cli>The plugin is designed to be a suitable for a vast array of businesses.\u003C\u002Fli>\n\u003Cli>100% mobile-friendly and looks amazing on any device.\u003C\u002Fli>\n\u003Cli>All booking data is stored in your DB. You don’t need other accounts.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multi language\u003C\u002Fstrong> support. Check all available languages at \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbooking\u002F#support%20languages%20%28local%29\" title=\"Translations\" rel=\"ugc\">this page\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Easy to start using\u003C\u002Fh4>\n\u003Cp>Booking Calendar is an easy solution to start receiving bookings.\u003Cbr \u002F>\nYou can quickly \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Finsert-booking-calendar-into-page\u002F\" rel=\"nofollow ugc\">add the booking calendar\u003C\u002Fa> to your posts or pages using WordPress blocks or shortcodes. Additionally, you can add the booking calendar as a widget to your site’s sidebar.\u003Cbr \u002F>\nMost of the settings come with predefined values and descriptions.\u003C\u002Fp>\n\u003Ch4>Bookings\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Prevention of double bookings\u003C\u002Fstrong> – one booking per day or time slot.\u003C\u002Fli>\n\u003Cli>Alternatively, you can allow \u003Cstrong>unlimited bookings for the same date\u003C\u002Fstrong> and time within the same calendar.\u003C\u002Fli>\n\u003Cli>You can enable \u003Cstrong>pending bookings as available\u003C\u002Fstrong> in the calendar, which lets you receive multiple bookings for the same date until you manually approve one of them. You can receive as many bookings as you need to and stop receiving bookings on specific dates once you have approved a booking.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Timeslots bookings\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002F-pOTMiyp6Q8?t=28s\" title=\"Video guide how to configure time slots in Booking Calendar Free version\" rel=\"nofollow ugc\">Time slot bookings\u003C\u002Fa>\u003C\u002Fstrong> are available in the Booking Calendar Free version, which allows you to receive bookings for available time-slots during a selected day. Customers can select time slots either in a time picker or from a dropdown list, depending on your settings at Settings General page in “Time Slots” section.\u003C\u002Fp>\n\u003Ch4>Calendar\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Select a \u003Cstrong>calendar skin\u003C\u002Fstrong> that matches your website design.\u003C\u002Fli>\n\u003Cli>Or customize the calendar colors by \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Fchange-skin-and-colors\u002F\" rel=\"nofollow ugc\">editing the CSS\u003C\u002Fa> styles.\u003C\u002Fli>\n\u003Cli>Choose to display \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Fshortcode-booking-form\u002F#booking-options\" rel=\"nofollow ugc\">one or several months\u003C\u002Fa> in the calendar view.\u003C\u002Fli>\n\u003Cli>Easily set the width of the calendar and the number of months in a row, such as \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Fshortcode-booking-form\u002F#booking-options\" rel=\"nofollow ugc\">3×2 months\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Choose between \u003Cstrong>single\u003C\u002Fstrong> day or \u003Cstrong>multiple days\u003C\u002Fstrong> selection mode.\u003C\u002Fli>\n\u003Cli>Set the number of unavailable days in the calendar, starting from today.\u003C\u002Fli>\n\u003Cli>Specify particular weekdays as unavailable.\u003C\u002Fli>\n\u003Cli>Show a legend on the calendar to help visitors understand the status of each day.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Booking Form\u003C\u002Fh4>\n\u003Cp>Easily customize your booking form fields to capture all the necessary information for each booking. Choose which fields are required and which are optional, and customize field labels as needed. Plus, the booking form includes \u003Cstrong>CAPTCHA\u003C\u002Fstrong> support to prevent spam submissions.\u003C\u002Fp>\n\u003Ch4>Timeline\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Fshortcode-timeline\u002F\" rel=\"nofollow ugc\">Timeline view\u003C\u002Fa> allows you to display all your bookings in a yearly, monthly, or daily view on the front-end of your website, giving your visitors a quick and comprehensive overview of your schedule.\u003C\u002Fp>\n\u003Ch4>Booking Admin Panel\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Easily manage your bookings with a modern and clear \u003Ca href=\"https:\u002F\u002Fps.w.org\u002Fbooking\u002Fassets\u002Fscreenshot-03.gif?rev=2870020\" rel=\"nofollow ugc\">Booking Listing\u003C\u002Fa> panel or with the intuitive \u003Ca href=\"https:\u002F\u002Fps.w.org\u002Fbooking\u002Fassets\u002Fscreenshot-04.png?rev=2870020\" rel=\"nofollow ugc\">Calendar Overview\u003C\u002Fa> mode.\u003C\u002Fli>\n\u003Cli>The \u003Ca href=\"https:\u002F\u002Fps.w.org\u002Fbooking\u002Fassets\u002Fscreenshot-03.gif?rev=2870020\" rel=\"nofollow ugc\">Booking Listing\u003C\u002Fa> makes it very simple to find the required reservations. It provides searching by different criteria and immediate results based on keywords.\u003C\u002Fli>\n\u003Cli>Get a complete picture of your schedule with the \u003Ca href=\"https:\u002F\u002Fps.w.org\u002Fbooking\u002Fassets\u002Fscreenshot-04.png?rev=2870020\" rel=\"nofollow ugc\">Calendar Overview\u003C\u002Fa> in \u003Cstrong>day\u003C\u002Fstrong>, \u003Cstrong>week\u003C\u002Fstrong>, or \u003Cstrong>month\u003C\u002Fstrong> view mode.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Approve\u003C\u002Fstrong>, \u003Cstrong>decline\u003C\u002Fstrong>, or \u003Cstrong>edit details\u003C\u002Fstrong> in required bookings.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Print\u003C\u002Fstrong> a list of your bookings.\u003C\u002Fli>\n\u003Cli>Get the number of new bookings on the \u003Cstrong>booking dashboard section\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Google Calendar Integration\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002Fimport-gc-events\u002F\" rel=\"nofollow ugc\">Import events\u003C\u002Fa> from your \u003Cstrong>Google Calendar\u003C\u002Fstrong> to the Booking Calendar plugin.\u003C\u002Fli>\n\u003Cli>With just one click, \u003Cstrong>add bookings to Google Calendar\u003C\u002Fstrong> from the Booking Listing page using export button near each booking(s).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sync bookings\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Easily \u003Cstrong>import and export\u003C\u002Fstrong> events using .ics feeds or files with native integration with our \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbooking-manager\u002F\" rel=\"ugc\">Booking Manager\u003C\u002Fa> plugin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002F#sync\" rel=\"nofollow ugc\">Import events\u003C\u002Fa>\u003C\u002Fstrong> from various sources, such as Airbnb, Booking.com, HomeAway, TripAdvisor, VRBO, FlipKey, and any other calendar that uses the .ics format.\u003C\u002Fli>\n\u003Cli>Customize parameters such as date conditions and maximum number of items to import in the import \u003Ca href=\"https:\u002F\u002Foplugins.com\u002Fplugins\u002Fwp-booking-manager\u002Fbooking-manager-help\u002F#events-import\" rel=\"nofollow ugc\">shortcodes\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffaq\u002F#sync\" rel=\"nofollow ugc\">Export bookings\u003C\u002Fa>\u003C\u002Fstrong> by configuring custom URL for your.ics feed. This feed can then be imported into services that use the .ics (iCal) format, such as Google Calendar or Airbnb, etc…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Email Notifications\u003C\u002Fh4>\n\u003Cp>Configure email confirmation to be sent to the site administrator and visitors for specific booking actions, such as new booking creation, approval or decline of bookings. You can customize the content and format of the emails, and also change the administrator email address to receive notifications.\u003C\u002Fp>\n\u003Ch4>Other settings\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Customizable \u003Cstrong>date format\u003C\u002Fstrong> for your bookings.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Restriction of access\u003C\u002Fstrong> to plugin menus for standard WordPress user roles.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>And \u003Cstrong>much more\u003C\u002Fstrong>… Check ton of features in \u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F\" title=\"Booking Calendar Features list\" rel=\"nofollow ugc\">premium versions\u003C\u002Fa> of plugin.\u003C\u002Fp>\n\u003Ch3>Premium Features in paid versions\u003C\u002Fh3>\n\u003Ch4>Booking Calendar Personal (or higher versions)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#booking-resources\" rel=\"nofollow ugc\">Multiple booking resources (calendars)\u003C\u002Fa> – create an unlimited number of booking resources (calendars), which can be your services, properties, or any other items that can be booked by visitors in separate unique calendars.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#booking-form\" rel=\"nofollow ugc\">Advanced configuration of booking form and emails\u003C\u002Fa> – fully customize the appearance of your booking form and email templates.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#manage-bookings\" rel=\"nofollow ugc\">Manage bookings\u003C\u002Fa> – perform various actions such as CSV export, adding notes, editing, duplicating, changing resources, and much more…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Booking Calendar Business Small (or higher versions)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#payments\" rel=\"nofollow ugc\">Online Payments\u003C\u002Fa> – accept online payments for your bookings, with support for various payment gateways like \u003Cstrong>Stripe, PayPal, Authorize.Net, Redsys\u003C\u002Fstrong>, and more.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#change-over-days\" rel=\"nofollow ugc\">Changeover Days\u003C\u002Fa> – enable \u003Cstrong>split bookings\u003C\u002Fstrong> marked by vertical or diagonal lines, allowing visitors to check out and check in on the same date.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#range-days-selection\" rel=\"nofollow ugc\">Range days selection\u003C\u002Fa> – easily enable week(s) or any specific number of days selection with 1 or 2 mouse clicks, and configure minimum and maximum number of days, as well as specific start weekdays for selections.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#auto-cancellation\" rel=\"nofollow ugc\">Auto Approval \u002F Cancellation\u003C\u002Fa> – set up automatic cancellation of unpaid pending bookings after a specific time, or enable auto-approval for incoming bookings.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#times\" rel=\"nofollow ugc\">Advanced Hourly Bookings\u003C\u002Fa> – increase the flexibility of your Booking Calendar by allowing visitors to book specific start and end times or duration of time, ensuring precise scheduling for your services.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Booking Calendar Business Medium (or higher versions)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#rates\" rel=\"nofollow ugc\">Seasonal Prices\u003C\u002Fa> – customize the daily cost (rates) for different seasons or week days with fixed costs per day or as a percentage from original daily cost.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#valuation-days\" rel=\"nofollow ugc\">Multi-Day Pricing\u003C\u002Fa> – set different cost of booking based on the number of selected days, and the ability to apply these costs only if the “Check In” day falls within a specific season.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#early-late-discounts\" rel=\"nofollow ugc\">Last Minute Booking Discount\u003C\u002Fa> – offer a discount for bookings, if the difference between the booking date and the check-in date is less than a specified number of days.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#early-late-discounts\" rel=\"nofollow ugc\">Early Booking Discounts\u003C\u002Fa> – set a discount for bookings made in advance, if the difference between the booking date and the check-in date is greater than a specified number of days.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#additional-cost\" rel=\"nofollow ugc\">Advanced cost\u003C\u002Fa> – configure the booking cost based on the options selected in the form, by adding extra charges such as taxes, additional services, or by adjusting the cost based on the number of visitors.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#deposit\" rel=\"nofollow ugc\">Deposit payments\u003C\u002Fa> – allows visitors to pay a part of the booking cost such as a fixed deposit value or percentage of the original booking cost after creating a booking.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#custom-forms\" rel=\"nofollow ugc\">Multiple Custom Forms\u003C\u002Fa> – create multiple form configurations, allowing you to use different forms with different form fields for each of your booking resources.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#advanced-days-selection\" rel=\"nofollow ugc\">Advanced days selection\u003C\u002Fa> – customize the specific number of days that can be selected on specific weekdays or during certain seasons or allow specific start week days on certain season.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#times-week-days\" rel=\"nofollow ugc\">Different time-slots on different days\u003C\u002Fa> – configure different time slots for different week days or seasons.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#availability\" rel=\"nofollow ugc\">Advanced Season Availability\u003C\u002Fa> – set unavailable days for specific seasons, such as holidays or weekends during summer, using conditional season filters.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#availability-from-today\" rel=\"nofollow ugc\">Availability from Today\u003C\u002Fa> – limit or define the number of available\u002Funavailable days starting from today.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#unavailable-time-after-before-booking\" rel=\"nofollow ugc\">Unavailable time before or after a booking\u003C\u002Fa> – setting the number of minutes, hours, or days needed for cleaning or other services, applicable to bookings with time slots or change-over days feature.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Booking Calendar Business Large (or higher versions)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#capacity\" rel=\"nofollow ugc\">Capacity and Availability\u003C\u002Fa> – set the  the maximum number of bookings that can be made per full day or time slots  in calendar, and ensure that dates in the calendar are only available until the capacity is reached.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#search\" rel=\"nofollow ugc\">Search Availability\u003C\u002Fa> – allows your website visitors to quickly search for available booking resources such as properties or services by entering check-in\u002Fout dates and other criteria like the number of guests or specific amenities.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#coupons\" rel=\"nofollow ugc\">Coupons for Discounts\u003C\u002Fa> – offer discounts to your visitors by creating coupon codes that can be entered in the booking form.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#pending-available\" rel=\"nofollow ugc\">Auto-Cancel Pending Bookings\u003C\u002Fa> – enable automatic cancellation of pending bookings for specific dates when you approve booking for the same resource.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Booking Calendar MultiUser version\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpbookingcalendar.com\u002Ffeatures\u002F#multiuser\" rel=\"nofollow ugc\">MultiUser Booking Admin Panels\u003C\u002Fa> – enable each registered WordPress user to have their own individual booking admin panel, where they can see and manage only their own bookings, resources, and settings. This includes the ability to configure their own booking form, receive notifications to own separate emails, and activate payment gateways for their own payment accounts.\u003C\u002Fli>\n\u003C\u002Ful>\n","Original \"Booking Calendar\" plugin. Easily manage full-day bookings, time-slot appointments, or events in our all-in-one, outstanding booking system.",50000,4802066,94,646,"2026-02-10T08:20:00.000Z","5.3",[171,159,20,172,21],"appointments","bookings","https:\u002F\u002Fwpbookingcalendar.com\u002Fdemo\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbooking.10.14.16.zip",82,"2026-02-17 00:00:00",{"slug":178,"name":179,"version":180,"author":181,"author_profile":182,"description":183,"short_description":184,"active_installs":164,"downloaded":185,"rating":186,"num_ratings":187,"last_updated":188,"tested_up_to":189,"requires_at_least":190,"requires_php":191,"tags":192,"homepage":196,"download_link":197,"security_score":198,"vuln_count":199,"unpatched_count":29,"last_vuln_date":200,"fetched_at":31},"google-calendar-events","Simple Calendar – Google Calendar Plugin","3.6.2","SimpleCalendar","https:\u002F\u002Fprofiles.wordpress.org\u002Fsimplecalendar\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fsimplecalendar.io\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=simple-cal-readme&utm_content=description\" rel=\"nofollow ugc\">Simple Calendar\u003C\u002Fa> is the easiest way to add Google Calendar events to your WordPress site. Quick to setup. Fine tune to your needs. Mobile responsive. Beautifully designed.\u003C\u002Fp>\n\u003Ch4>Simple Calendar Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Display events from any public Google Calendar.\u003C\u002Fli>\n\u003Cli>Keep managing events in Google Calendar. No need to create events in WordPress.\u003C\u002Fli>\n\u003Cli>Out-of-the-box designs that match your theme’s look and feel.\u003C\u002Fli>\n\u003Cli>Fully responsive and mobile-friendly monthly grid and list views.\u003C\u002Fli>\n\u003Cli>Customize event content display using simple tags. No coding required.\u003C\u002Fli>\n\u003Cli>Combine multiple calendars into single displays explicitly or using categories.\u003C\u002Fli>\n\u003Cli>Intuitive, simple display configuration changes for fine tuning.\u003C\u002Fli>\n\u003Cli>Advanced settings to adjust time zones, date\u002Ftime formats and start of the week.\u003C\u002Fli>\n\u003Cli>Integration with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fevent-calendar-newsletter\u002F\" rel=\"ugc\">Event Calendar Newsletter\u003C\u002Fa> for quickly turning your events into a newsletter-friendly format.\u003C\u002Fli>\n\u003Cli>Additional functionality offered with \u003Ca href=\"https:\u002F\u002Fsimplecalendar.io\u002Faddons\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=simple-cal-readme&utm_content=description\" rel=\"nofollow ugc\">add-ons\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Translations available with more being added on a regular basis. \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fgoogle-calendar-events\" rel=\"nofollow ugc\">Translations welcome!\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Open source with code hosted on GitHub. \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FXtendify\u002FSimple-Calendar\" rel=\"nofollow ugc\">Contributions welcome!\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fsimplecalendar.io\u002Faddons\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=simple-cal-readme&utm_content=description\" rel=\"nofollow ugc\">Love using Simple Calendar? Consider purchasing a Premium Add-on\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>FullCalendar Add-on Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Week and day views\u003C\u002Fstrong> added alongside the month view.\u003C\u002Fli>\n\u003Cli>Display event titles and start times directly on your calendar.\u003C\u002Fli>\n\u003Cli>Faster load times when navigating through months, weeks or days.\u003C\u002Fli>\n\u003Cli>Configure header navigation buttons to allow site visitors to easily switch between views.\u003C\u002Fli>\n\u003Cli>Intuitive design for multi-day events.\u003C\u002Fli>\n\u003Cli>Customizable calendar heights with optional scroll bars.\u003C\u002Fli>\n\u003Cli>Set default start time for week and day views.\u003C\u002Fli>\n\u003Cli>Limit display times for week and day views.\u003C\u002Fli>\n\u003Cli>Works with our Google Calendar Pro add-on to display \u003Cstrong>color-coded events\u003C\u002Fstrong> within each view.\u003C\u002Fli>\n\u003Cli>Priority email support with a 24-hour response time during weekdays backed by a top-notch team.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Google Calendar Pro Add-on Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Display events from both \u003Cstrong>private and public\u003C\u002Fstrong> Google Calendars.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Highlight events with colors\u003C\u002Fstrong> that match assigned Google Calendar event colors.\u003C\u002Fli>\n\u003Cli>Display attendee names, avatars and RSVP status for any private or public event.\u003C\u002Fli>\n\u003Cli>Display event organizer information.\u003C\u002Fli>\n\u003Cli>Display a list of attachments with links to their original source.\u003C\u002Fli>\n\u003Cli>Secure connection established between your site and Google using the OAuth standard.\u003C\u002Fli>\n\u003Cli>Works with our FullCalendar add-on to display beautiful month, week and day views with color-coded events.\u003C\u002Fli>\n\u003Cli>Priority email support with a 24-hour response time during weekdays backed by a top-notch team.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fsimplecalendar.io\u002Faddons\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=simple-cal-readme&utm_content=description\" rel=\"nofollow ugc\">Get ALL these features with our Premium Add-ons\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Want to take Simple Calendar for a spin first? \u003Cstrong>\u003Ca href=\"http:\u002F\u002Fdemo.simplecalendar.io\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=simple-cal-readme&utm_content=description\" rel=\"nofollow ugc\">Try out a Live Demo\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n","Add Google Calendar events to your WordPress site in minutes. Beautiful calendar displays. Mobile responsive.",3561963,76,395,"2026-01-21T10:15:00.000Z","6.8.5","4.2","8.1",[21,22,193,194,195],"website-calendar","wp-calendar","wp-calendar-widget","https:\u002F\u002Fsimplecalendar.io","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgoogle-calendar-events.3.6.2.zip",95,7,"2025-12-18 00:00:00",{"attackSurface":202,"codeSignals":457,"taintFlows":968,"riskAssessment":1042,"analyzedAt":1059},{"hooks":203,"ajaxHandlers":440,"restRoutes":441,"shortcodes":442,"cronEvents":455,"entryPointCount":456,"unprotectedCount":29},[204,211,216,221,225,228,230,233,237,240,243,248,252,256,260,263,267,270,273,277,281,284,288,293,297,302,305,309,313,317,321,324,328,332,338,341,346,348,353,358,361,363,367,373,377,381,384,386,389,392,395,397,400,405,410,414,418,422,427,429,432,434,436],{"type":205,"name":206,"callback":207,"priority":208,"file":209,"line":210},"action","wpbm_after_settings_content","enqueue_js",10,"core\\admin\\api-settings.php",37,{"type":212,"name":213,"callback":214,"priority":208,"file":209,"line":215},"filter","wpbm_settings_validate_fields_before_saving","wpbm_settings_validate_fields_before_saving__all",683,{"type":205,"name":217,"callback":218,"file":219,"line":220},"wpbm_menu_created","__construct","core\\admin\\exmpl-page-email-download_notification.php",900,{"type":212,"name":222,"callback":223,"priority":208,"file":219,"line":224},"wpbm_email_api_is_allow_send_copy","wpbm_email_api_is_allow_send_copy_block",936,{"type":205,"name":217,"callback":218,"file":226,"line":227},"core\\admin\\exmpl-page-email-link-user.php",880,{"type":212,"name":222,"callback":223,"priority":208,"file":226,"line":229},916,{"type":205,"name":217,"callback":218,"file":231,"line":232},"core\\admin\\page-root-ics.php",371,{"type":205,"name":234,"callback":235,"priority":208,"file":231,"line":236},"wpbm_show_debug","wpbm_start_showing_debug",459,{"type":205,"name":217,"callback":218,"file":238,"line":239},"core\\admin\\page-settings-listing.php",528,{"type":205,"name":217,"callback":218,"file":241,"line":242},"core\\admin\\page-settings.php",285,{"type":205,"name":244,"callback":245,"file":246,"line":247},"init","define_init_hooks","core\\admin\\wpbm-toolbar-tiny.php",46,{"type":212,"name":249,"callback":250,"file":246,"line":251},"mce_external_plugins","load_tiny_js_plugin",64,{"type":212,"name":253,"callback":254,"file":246,"line":255},"mce_buttons","add_tiny_button",67,{"type":205,"name":257,"callback":258,"file":246,"line":259},"edit_page_form","add_html_button",73,{"type":205,"name":261,"callback":262,"file":246,"line":97},"admin_head","insert_button",{"type":205,"name":264,"callback":265,"file":246,"line":266},"admin_footer","modal_content",78,{"type":205,"name":264,"callback":268,"file":246,"line":269},"write_js",107,{"type":205,"name":264,"callback":271,"file":246,"line":272},"write_css",108,{"type":212,"name":274,"callback":275,"priority":208,"file":276,"line":247},"upgrader_post_install","wpbm_install_in_bulk_upgrade","core\\any\\activation.php",{"type":212,"name":278,"callback":279,"priority":208,"file":276,"line":280},"plugin_action_links","plugin_links",49,{"type":212,"name":282,"callback":282,"priority":208,"file":276,"line":283},"plugin_row_meta",51,{"type":205,"name":285,"callback":286,"file":276,"line":287},"plugins_loaded","wpbm_activate_initial",185,{"type":212,"name":289,"callback":290,"file":291,"line":292},"phpmailer_init","process_multipart","core\\any\\api-emails.php",39,{"type":205,"name":294,"callback":295,"file":291,"line":296},"wp_mail_failed","email_error_parse",41,{"type":205,"name":298,"callback":299,"priority":208,"file":300,"line":301},"admin_menu","new_admin_page","core\\any\\class-admin-menu.php",69,{"type":205,"name":298,"callback":303,"priority":304,"file":300,"line":111},"change_second_root_menu_title",11,{"type":205,"name":306,"callback":306,"file":307,"line":308},"wpbm_define_nav_tabs","core\\any\\class-admin-page-structure.php",38,{"type":205,"name":310,"callback":311,"file":307,"line":312},"wpbm_page_structure_show","content_structure",40,{"type":205,"name":206,"callback":314,"priority":208,"file":315,"line":316},"enqueue_validate_js","core\\any\\class-admin-settings-api.php",101,{"type":205,"name":318,"callback":319,"file":320,"line":150},"admin_enqueue_scripts","registerScripts","core\\any\\class-css-js.php",{"type":205,"name":322,"callback":319,"file":320,"line":323},"wp_enqueue_scripts",21,{"type":205,"name":325,"callback":326,"file":320,"line":327},"wpbm_load_js_on_admin_page","load_js_on_admin_page",23,{"type":205,"name":329,"callback":330,"file":320,"line":331},"wpbm_load_css_on_admin_page","load_css_on_admin_page",24,{"type":205,"name":333,"callback":334,"priority":335,"file":336,"line":337},"wpbm_enqueue_js_files","wpbm_js_load_files",50,"core\\any\\wpbm-class-dismiss.php",61,{"type":205,"name":339,"callback":339,"priority":335,"file":336,"line":340},"wpbm_enqueue_css_files",62,{"type":205,"name":342,"callback":343,"file":344,"line":345},"wpbm_hook_wpbm_page_header","show_system_notices","core\\any\\wpbm-class-notices.php",22,{"type":205,"name":347,"callback":343,"file":344,"line":327},"wpbm_settings_after_header",{"type":205,"name":349,"callback":350,"file":351,"line":352},"template_redirect","wpbm_make_export_ics_feeds","core\\wpbc\\wpbm-bc-export.php",191,{"type":212,"name":354,"callback":355,"priority":208,"file":356,"line":357},"wpbc_get_insert_sql_for_dates","wpbm_get_insert_sql_for_dates","core\\wpbc\\wpbm-bc-import.php",467,{"type":205,"name":359,"callback":359,"priority":208,"file":356,"line":360},"wpbm_ics_import_start",544,{"type":212,"name":354,"callback":355,"priority":208,"file":356,"line":362},923,{"type":212,"name":364,"callback":365,"priority":208,"file":356,"line":366},"wpbc_is_reupdate_dates_to_child_resources","wpbm_is_reupdate_dates_to_child_resources",926,{"type":212,"name":368,"callback":369,"priority":370,"file":371,"line":372},"locale","wpbm_get_locale",999,"core\\wpbm-ajax.php",60,{"type":205,"name":374,"callback":375,"file":371,"line":376},"admin_init","wpbm_check_locale_for_ajax",132,{"type":205,"name":378,"callback":378,"priority":208,"file":379,"line":380},"wpbm_admin_show_top_notice","core\\wpbm-debug.php",253,{"type":212,"name":382,"callback":382,"priority":208,"file":383,"line":186},"wpbm_email_api_get_subject_before","core\\wpbm-emails.php",{"type":212,"name":385,"callback":385,"priority":208,"file":383,"line":316},"wpbm_email_api_get_content_before",{"type":212,"name":387,"callback":387,"priority":208,"file":383,"line":388},"wpbm_email_api_get_content_after",117,{"type":212,"name":390,"callback":390,"priority":208,"file":383,"line":391},"wpbm_email_api_get_headers_after",161,{"type":212,"name":393,"callback":393,"priority":133,"file":383,"line":394},"wpbm_email_api_is_allow_send",178,{"type":212,"name":222,"callback":393,"priority":133,"file":383,"line":396},179,{"type":205,"name":398,"callback":398,"priority":208,"file":383,"line":399},"wpbm_email_sending_error",216,{"type":212,"name":401,"callback":402,"file":403,"line":404},"wpbm_is_load_script_on_this_page","wpbm_is_load_css_js_on_client_page","core\\wpbm-js.php",290,{"type":205,"name":285,"callback":406,"priority":407,"file":408,"line":409},"wpbm_load_translation",1000,"core\\wpbm-translation.php",164,{"type":212,"name":411,"callback":412,"priority":208,"file":408,"line":413},"load_textdomain_mofile","wpbm_load_custom_plugin_translation_file",183,{"type":212,"name":415,"callback":416,"priority":133,"file":408,"line":417},"plugin_locale","wpbm_recheck_plugin_locale",234,{"type":205,"name":264,"callback":419,"priority":335,"file":420,"line":421},"js","core\\wpbm-upload.php",58,{"type":205,"name":423,"callback":424,"file":425,"line":426},"_admin_menu","define_admin_menu","core\\wpbm.php",57,{"type":205,"name":264,"callback":428,"priority":335,"file":425,"line":421},"wpbm_print_js",{"type":205,"name":322,"callback":430,"priority":431,"file":425,"line":340},"load",1000000001,{"type":205,"name":322,"callback":430,"priority":431,"file":425,"line":433},63,{"type":205,"name":435,"callback":428,"priority":335,"file":425,"line":251},"wp_footer",{"type":205,"name":437,"callback":438,"file":425,"line":439},"admin_notices","wpbm_show_activation_error",310,[],[],[443,447,451],{"tag":444,"callback":445,"file":446,"line":280},"booking-manager-import","wpbm_ics_import_shortcode","core\\wpbm-shortcodes.php",{"tag":448,"callback":449,"file":446,"line":450},"booking-manager-listing","wpbm_ics_listing_shortcode",85,{"tag":452,"callback":453,"file":446,"line":454},"booking-manager-delete","wpbm_ics_delete_shortcode",151,[],3,{"dangerousFunctions":458,"sqlUsage":464,"outputEscaping":481,"fileOperations":963,"externalRequests":29,"nonceChecks":208,"capabilityChecks":28,"bundledLibraries":964},[459],{"fn":460,"file":461,"line":462,"context":463},"unserialize","core\\wpbm-functions.php",306,"return unserialize( strtolower( serialize( $array ) ) );",{"prepared":465,"raw":199,"locations":466},16,[467,469,471,472,475,477,479],{"file":356,"line":280,"context":468},"$wpdb->get_results() with variable interpolation",{"file":356,"line":372,"context":470},"$wpdb->query() with variable interpolation",{"file":356,"line":340,"context":470},{"file":473,"line":474,"context":470},"core\\wpbm-activation.php",136,{"file":446,"line":476,"context":468},128,{"file":446,"line":478,"context":470},139,{"file":446,"line":480,"context":470},141,{"escaped":482,"rawEcho":483,"locations":484},482,269,[485,488,489,491,492,494,495,497,498,500,502,503,505,506,508,509,511,512,514,516,517,519,520,522,524,526,528,530,532,534,535,536,538,539,541,542,544,546,548,550,552,553,555,557,559,561,563,564,566,567,570,572,573,575,577,579,581,583,585,587,589,591,592,594,596,598,600,602,604,606,608,610,612,614,616,618,619,621,622,624,626,627,628,630,632,633,634,636,638,640,642,643,645,646,648,650,652,654,656,658,660,662,664,666,668,670,671,673,675,677,679,681,683,684,686,688,690,692,694,696,697,699,701,703,705,707,708,710,712,714,715,717,719,720,722,724,726,728,729,731,733,735,736,737,739,740,741,743,745,747,749,750,752,753,754,756,758,760,762,764,766,768,770,772,774,776,778,780,782,784,786,788,790,791,793,795,797,799,801,802,803,804,805,806,808,810,812,814,816,818,820,822,824,826,828,830,832,834,836,838,840,842,844,846,848,850,852,854,856,858,859,861,863,865,867,869,871,873,875,876,879,880,881,883,885,887,889,891,893,894,896,898,900,902,903,905,906,908,910,912,914,916,918,919,920,922,924,926,928,930,932,934,935,937,938,940,942,944,946,948,950,951,952,954,955,956,957,959,961],{"file":219,"line":486,"context":487},531,"raw output",{"file":219,"line":486,"context":487},{"file":219,"line":490,"context":487},535,{"file":219,"line":490,"context":487},{"file":219,"line":493,"context":487},578,{"file":219,"line":493,"context":487},{"file":219,"line":496,"context":487},582,{"file":219,"line":496,"context":487},{"file":219,"line":499,"context":487},620,{"file":226,"line":501,"context":487},510,{"file":226,"line":501,"context":487},{"file":226,"line":504,"context":487},514,{"file":226,"line":504,"context":487},{"file":226,"line":507,"context":487},557,{"file":226,"line":507,"context":487},{"file":226,"line":510,"context":487},561,{"file":226,"line":510,"context":487},{"file":226,"line":513,"context":487},599,{"file":231,"line":515,"context":487},142,{"file":231,"line":515,"context":487},{"file":231,"line":518,"context":487},146,{"file":231,"line":518,"context":487},{"file":231,"line":521,"context":487},166,{"file":231,"line":523,"context":487},168,{"file":231,"line":525,"context":487},169,{"file":231,"line":527,"context":487},192,{"file":231,"line":529,"context":487},275,{"file":231,"line":531,"context":487},276,{"file":231,"line":533,"context":487},417,{"file":231,"line":131,"context":487},{"file":238,"line":388,"context":487},{"file":238,"line":537,"context":487},127,{"file":238,"line":537,"context":487},{"file":238,"line":540,"context":487},131,{"file":238,"line":540,"context":487},{"file":238,"line":543,"context":487},295,{"file":238,"line":545,"context":487},296,{"file":238,"line":547,"context":487},297,{"file":238,"line":549,"context":487},299,{"file":238,"line":551,"context":487},502,{"file":238,"line":501,"context":487},{"file":241,"line":554,"context":487},152,{"file":241,"line":556,"context":487},156,{"file":241,"line":558,"context":487},159,{"file":241,"line":560,"context":487},162,{"file":241,"line":562,"context":487},172,{"file":241,"line":562,"context":487},{"file":241,"line":565,"context":487},176,{"file":241,"line":565,"context":487},{"file":568,"line":569,"context":487},"core\\admin\\wpbm-dashboard.php",243,{"file":568,"line":571,"context":487},250,{"file":246,"line":409,"context":487},{"file":246,"line":574,"context":487},202,{"file":246,"line":576,"context":487},223,{"file":246,"line":578,"context":487},231,{"file":246,"line":580,"context":487},265,{"file":246,"line":582,"context":487},583,{"file":246,"line":584,"context":487},586,{"file":246,"line":586,"context":487},622,{"file":246,"line":588,"context":487},625,{"file":246,"line":590,"context":487},680,{"file":246,"line":215,"context":487},{"file":246,"line":593,"context":487},719,{"file":246,"line":595,"context":487},722,{"file":246,"line":597,"context":487},1063,{"file":246,"line":599,"context":487},1066,{"file":246,"line":601,"context":487},1102,{"file":246,"line":603,"context":487},1105,{"file":246,"line":605,"context":487},1160,{"file":246,"line":607,"context":487},1163,{"file":246,"line":609,"context":487},1199,{"file":246,"line":611,"context":487},1202,{"file":276,"line":613,"context":487},97,{"file":615,"line":421,"context":487},"core\\any\\admin-bs-ui.php",{"file":615,"line":617,"context":487},59,{"file":615,"line":433,"context":487},{"file":615,"line":620,"context":487},65,{"file":615,"line":255,"context":487},{"file":615,"line":623,"context":487},83,{"file":615,"line":625,"context":487},87,{"file":615,"line":27,"context":487},{"file":615,"line":476,"context":487},{"file":615,"line":629,"context":487},129,{"file":615,"line":631,"context":487},130,{"file":615,"line":540,"context":487},{"file":615,"line":376,"context":487},{"file":615,"line":635,"context":487},133,{"file":615,"line":637,"context":487},135,{"file":615,"line":639,"context":487},138,{"file":615,"line":641,"context":487},188,{"file":615,"line":527,"context":487},{"file":615,"line":644,"context":487},195,{"file":615,"line":569,"context":487},{"file":615,"line":647,"context":487},316,{"file":615,"line":649,"context":487},362,{"file":615,"line":651,"context":487},373,{"file":615,"line":653,"context":487},374,{"file":615,"line":655,"context":487},375,{"file":615,"line":657,"context":487},376,{"file":615,"line":659,"context":487},377,{"file":615,"line":661,"context":487},378,{"file":615,"line":663,"context":487},391,{"file":615,"line":665,"context":487},392,{"file":615,"line":667,"context":487},393,{"file":615,"line":669,"context":487},394,{"file":615,"line":187,"context":487},{"file":615,"line":672,"context":487},396,{"file":615,"line":674,"context":487},449,{"file":615,"line":676,"context":487},452,{"file":615,"line":678,"context":487},460,{"file":615,"line":680,"context":487},461,{"file":615,"line":682,"context":487},478,{"file":615,"line":482,"context":487},{"file":615,"line":685,"context":487},488,{"file":615,"line":687,"context":487},492,{"file":615,"line":689,"context":487},493,{"file":615,"line":691,"context":487},593,{"file":615,"line":693,"context":487},642,{"file":615,"line":695,"context":487},655,{"file":615,"line":695,"context":487},{"file":615,"line":698,"context":487},657,{"file":615,"line":700,"context":487},661,{"file":615,"line":702,"context":487},665,{"file":615,"line":704,"context":487},728,{"file":615,"line":706,"context":487},730,{"file":615,"line":706,"context":487},{"file":615,"line":709,"context":487},732,{"file":615,"line":711,"context":487},976,{"file":615,"line":713,"context":487},978,{"file":615,"line":713,"context":487},{"file":615,"line":716,"context":487},980,{"file":615,"line":718,"context":487},1446,{"file":615,"line":718,"context":487},{"file":615,"line":721,"context":487},1452,{"file":615,"line":723,"context":487},1455,{"file":615,"line":725,"context":487},1463,{"file":615,"line":727,"context":487},1465,{"file":615,"line":727,"context":487},{"file":615,"line":730,"context":487},1467,{"file":615,"line":732,"context":487},1468,{"file":615,"line":734,"context":487},1474,{"file":615,"line":734,"context":487},{"file":615,"line":734,"context":487},{"file":615,"line":738,"context":487},1476,{"file":615,"line":738,"context":487},{"file":615,"line":738,"context":487},{"file":615,"line":742,"context":487},1541,{"file":615,"line":744,"context":487},1545,{"file":615,"line":746,"context":487},1548,{"file":615,"line":748,"context":487},1560,{"file":615,"line":748,"context":487},{"file":615,"line":751,"context":487},1564,{"file":615,"line":751,"context":487},{"file":615,"line":751,"context":487},{"file":615,"line":755,"context":487},1600,{"file":615,"line":757,"context":487},1611,{"file":615,"line":759,"context":487},1624,{"file":615,"line":761,"context":487},1628,{"file":615,"line":763,"context":487},1703,{"file":615,"line":765,"context":487},1707,{"file":615,"line":767,"context":487},1711,{"file":615,"line":769,"context":487},1723,{"file":615,"line":771,"context":487},1724,{"file":615,"line":773,"context":487},1727,{"file":615,"line":775,"context":487},1731,{"file":615,"line":777,"context":487},1744,{"file":615,"line":779,"context":487},1748,{"file":615,"line":781,"context":487},1757,{"file":615,"line":783,"context":487},1764,{"file":615,"line":785,"context":487},1765,{"file":615,"line":787,"context":487},1768,{"file":615,"line":789,"context":487},1770,{"file":615,"line":789,"context":487},{"file":615,"line":792,"context":487},1777,{"file":307,"line":794,"context":487},196,{"file":307,"line":796,"context":487},199,{"file":307,"line":798,"context":487},606,{"file":307,"line":800,"context":487},607,{"file":307,"line":800,"context":487},{"file":307,"line":800,"context":487},{"file":307,"line":800,"context":487},{"file":307,"line":800,"context":487},{"file":307,"line":800,"context":487},{"file":307,"line":807,"context":487},612,{"file":307,"line":809,"context":487},619,{"file":315,"line":811,"context":487},330,{"file":315,"line":813,"context":487},491,{"file":315,"line":815,"context":487},505,{"file":315,"line":817,"context":487},509,{"file":315,"line":819,"context":487},558,{"file":315,"line":821,"context":487},569,{"file":315,"line":823,"context":487},571,{"file":315,"line":825,"context":487},575,{"file":315,"line":827,"context":487},629,{"file":315,"line":829,"context":487},653,{"file":315,"line":831,"context":487},658,{"file":315,"line":833,"context":487},714,{"file":315,"line":835,"context":487},743,{"file":315,"line":837,"context":487},795,{"file":315,"line":839,"context":487},816,{"file":315,"line":841,"context":487},817,{"file":315,"line":843,"context":487},825,{"file":315,"line":845,"context":487},828,{"file":315,"line":847,"context":487},881,{"file":315,"line":849,"context":487},894,{"file":315,"line":851,"context":487},932,{"file":315,"line":853,"context":487},933,{"file":315,"line":855,"context":487},937,{"file":315,"line":857,"context":487},987,{"file":315,"line":407,"context":487},{"file":315,"line":860,"context":487},1005,{"file":315,"line":862,"context":487},1082,{"file":315,"line":864,"context":487},1088,{"file":315,"line":866,"context":487},1197,{"file":315,"line":868,"context":487},1245,{"file":315,"line":870,"context":487},1291,{"file":872,"line":247,"context":487},"core\\any\\emails_tpl\\plain-html-tpl.php",{"file":872,"line":874,"context":487},47,{"file":872,"line":421,"context":487},{"file":877,"line":878,"context":487},"core\\any\\emails_tpl\\standard-html-tpl.php",44,{"file":877,"line":280,"context":487},{"file":877,"line":251,"context":487},{"file":877,"line":882,"context":487},79,{"file":877,"line":884,"context":487},92,{"file":877,"line":886,"context":487},229,{"file":877,"line":888,"context":487},230,{"file":877,"line":890,"context":487},233,{"file":877,"line":892,"context":487},237,{"file":877,"line":892,"context":487},{"file":877,"line":895,"context":487},249,{"file":877,"line":897,"context":487},261,{"file":877,"line":899,"context":487},279,{"file":336,"line":901,"context":487},187,{"file":336,"line":901,"context":487},{"file":344,"line":904,"context":487},45,{"file":344,"line":874,"context":487},{"file":344,"line":907,"context":487},48,{"file":344,"line":909,"context":487},53,{"file":344,"line":911,"context":487},238,{"file":344,"line":913,"context":487},240,{"file":344,"line":915,"context":487},241,{"file":344,"line":917,"context":487},252,{"file":344,"line":543,"context":487},{"file":351,"line":413,"context":487},{"file":351,"line":921,"context":487},718,{"file":356,"line":923,"context":487},43,{"file":356,"line":925,"context":487},952,{"file":356,"line":927,"context":487},972,{"file":371,"line":929,"context":487},115,{"file":379,"line":931,"context":487},32,{"file":379,"line":933,"context":487},35,{"file":379,"line":923,"context":487},{"file":379,"line":936,"context":487},52,{"file":379,"line":372,"context":487},{"file":379,"line":939,"context":487},222,{"file":379,"line":941,"context":487},246,{"file":379,"line":943,"context":487},247,{"file":461,"line":945,"context":487},1366,{"file":461,"line":947,"context":487},1526,{"file":446,"line":949,"context":487},120,{"file":446,"line":478,"context":487},{"file":446,"line":480,"context":487},{"file":420,"line":953,"context":487},321,{"file":420,"line":657,"context":487},{"file":420,"line":665,"context":487},{"file":420,"line":667,"context":487},{"file":420,"line":958,"context":487},421,{"file":420,"line":960,"context":487},469,{"file":425,"line":962,"context":487},307,6,[965],{"name":966,"version":38,"knownCves":967},"TinyMCE",[],[969,986,994,1007,1015,1032],{"entryPoint":970,"graph":971,"unsanitizedCount":121,"severity":40},"wpbm_make_export_ics_feeds (core\\wpbc\\wpbm-bc-export.php:37)",{"nodes":972,"edges":983},[973,978],{"id":974,"type":975,"label":976,"file":351,"line":977},"n0","source","$_SERVER['SERVER_PROTOCOL']",173,{"id":979,"type":980,"label":981,"file":351,"line":977,"wp_function":982},"n1","sink","header() [Header Injection]","header",[984],{"from":974,"to":979,"sanitized":985},false,{"entryPoint":987,"graph":988,"unsanitizedCount":121,"severity":40},"\u003Cwpbm-bc-export> (core\\wpbc\\wpbm-bc-export.php:0)",{"nodes":989,"edges":992},[990,991],{"id":974,"type":975,"label":976,"file":351,"line":977},{"id":979,"type":980,"label":981,"file":351,"line":977,"wp_function":982},[993],{"from":974,"to":979,"sanitized":985},{"entryPoint":995,"graph":996,"unsanitizedCount":29,"severity":1006},"wpbm_ajax_WPBM_LISTING_ICS_URL (core\\admin\\page-root-ics.php:443)",{"nodes":997,"edges":1003},[998,1000],{"id":974,"type":975,"label":999,"file":231,"line":960},"$_POST",{"id":979,"type":980,"label":1001,"file":231,"line":131,"wp_function":1002},"echo() [XSS]","echo",[1004],{"from":974,"to":979,"sanitized":1005},true,"low",{"entryPoint":1008,"graph":1009,"unsanitizedCount":29,"severity":1006},"\u003Cpage-root-ics> (core\\admin\\page-root-ics.php:0)",{"nodes":1010,"edges":1013},[1011,1012],{"id":974,"type":975,"label":999,"file":231,"line":960},{"id":979,"type":980,"label":1001,"file":231,"line":131,"wp_function":1002},[1014],{"from":974,"to":979,"sanitized":1005},{"entryPoint":1016,"graph":1017,"unsanitizedCount":121,"severity":1006},"update (core\\admin\\page-settings-listing.php:168)",{"nodes":1018,"edges":1029},[1019,1021,1024],{"id":974,"type":975,"label":999,"file":238,"line":1020},174,{"id":979,"type":1022,"label":1023,"file":238,"line":1020},"transform","→ update_wpbm_option()",{"id":1025,"type":980,"label":1026,"file":1027,"line":554,"wp_function":1028},"n2","update_option() [Settings Manipulation]","core\\wpbm-core.php","update_option",[1030,1031],{"from":974,"to":979,"sanitized":985},{"from":979,"to":1025,"sanitized":985},{"entryPoint":1033,"graph":1034,"unsanitizedCount":121,"severity":1006},"\u003Cpage-settings-listing> (core\\admin\\page-settings-listing.php:0)",{"nodes":1035,"edges":1039},[1036,1037,1038],{"id":974,"type":975,"label":999,"file":238,"line":1020},{"id":979,"type":1022,"label":1023,"file":238,"line":1020},{"id":1025,"type":980,"label":1026,"file":1027,"line":554,"wp_function":1028},[1040,1041],{"from":974,"to":979,"sanitized":985},{"from":979,"to":1025,"sanitized":985},{"summary":1043,"deductions":1044},"The \"booking-manager\" plugin v2.1.18 exhibits a mixed security posture. While the static analysis shows a relatively contained attack surface with no identified unprotected entry points and a reasonable percentage of SQL queries using prepared statements, concerns arise from the presence of the `unserialize` function. This function is a common vector for remote code execution if used with untrusted input, and its presence warrants careful review of its usage. The taint analysis, though limited in scope, did not reveal critical or high-severity unsanitized paths, which is a positive sign.\n\nThe plugin's vulnerability history is a significant concern. With a total of four known CVEs, including one high-severity vulnerability and three medium-severity ones, it indicates a past pattern of security weaknesses. The types of past vulnerabilities (XSS, Missing Authorization, SQL Injection, SSRF) are common and can have severe impacts if exploited. While there are currently no unpatched CVEs, the historical pattern suggests a higher likelihood of future vulnerabilities if development practices do not significantly improve. The most recent vulnerability being in late 2025 is also notable, implying a recent discovery or patching.\n\nIn conclusion, \"booking-manager\" v2.1.18 has strengths in its limited attack surface and some secure coding practices like prepared statements. However, the presence of `unserialize` and a history of multiple vulnerabilities, including high and medium severity, necessitate a cautious approach. The plugin developers need to ensure robust input sanitization and authorization checks are consistently applied across all features, especially around the usage of `unserialize`, and maintain a proactive security patching strategy.",[1045,1047,1050,1052,1054,1057],{"reason":1046,"points":208},"Presence of dangerous function: unserialize",{"reason":1048,"points":1049},"Significant number of known CVEs historically",15,{"reason":1051,"points":208},"History of high-severity vulnerabilities",{"reason":1053,"points":963},"History of medium-severity vulnerabilities",{"reason":1055,"points":1056},"Taint analysis shows unsanitized paths",5,{"reason":1058,"points":28},"Only 64% of outputs properly escaped","2026-03-16T18:08:51.184Z",{"wat":1061,"direct":1080},{"assetPaths":1062,"generatorPatterns":1071,"scriptPaths":1072,"versionParams":1073},[1063,1064,1065,1066,1067,1068,1069,1070],"\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fassets\u002Fimg\u002Ficon-16x16.png","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fjs\u002Fwpbm_tinymce_btn.js","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fassets\u002Flibs\u002Fbootstrap\u002Fjs\u002Fbootstrap.js","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fjs\u002Fwpbm_bs_no_conflict.js","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fassets\u002Fcss\u002Fwpbm-admin-style.css","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fassets\u002Fcss\u002Fwpbm-common-style.css","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fassets\u002Fcss\u002Fwpbm-admin-style.min.css","\u002Fwp-content\u002Fplugins\u002Fbooking-manager\u002Fassets\u002Fcss\u002Fwpbm-common-style.min.css",[],[1064],[1074,1075,1076,1077,1078,1079],"booking-manager\u002Fassets\u002Flibs\u002Fbootstrap\u002Fjs\u002Fbootstrap.js?ver=","booking-manager\u002Fjs\u002Fwpbm_bs_no_conflict.js?ver=","booking-manager\u002Fassets\u002Fcss\u002Fwpbm-admin-style.css?ver=","booking-manager\u002Fassets\u002Fcss\u002Fwpbm-common-style.css?ver=","booking-manager\u002Fassets\u002Fcss\u002Fwpbm-admin-style.min.css?ver=","booking-manager\u002Fassets\u002Fcss\u002Fwpbm-common-style.min.css?ver=",{"cssClasses":1081,"htmlComments":1083,"htmlAttributes":1086,"restEndpoints":1089,"jsGlobals":1090,"shortcodeOutput":1094},[1082],"wpbm_insert_shortcode_button",[1084,1085],"FixIn: 2025-04-04.","FixIn: 2.0.8.2 - compatibility with Gutenberg 4.1- 4.3 ( or newer ) at edit post page.",[1087,1088],"data-target=\"#wpbm_tiny_modal\"","data-toggle=\"modal\"",[],[1091,1092,1093],"wpbm_init_tinymce_buttons","wpbm_tiny_btn_click","wpbm_plugin_url",[]]