ShootCal Web Calendar is the companion plugin for the ShootCal scheduling app for Mac and iOS. Publish your availability – or a full calendar – on your website straight from the calendar you already keep in ShootCal, which hides your personal events, builds each day’s availability from your session types, and auto-detects your timezone. It also works with any iCal (.ics) feed – Google Calendar, Apple, or Outlook – so you can use it with or without ShootCal.
Add it to any WordPress page or post in one of two modes. Availability mode shows which days are available, limited, or booked without ever exposing your event titles, locations, attendees, or descriptions. Full calendar mode shows each event’s title and time on the grid – handy for a public schedule like sunrise/sunset times, office hours, or class times.
Built for photographers and other service providers who want to show clients when they can book, without manually updating a calendar on their website every week.
Each calendar’s feed URL lives on the embed itself – the block’s Calendar feed URL field, or the shortcode’s url attribute – so different pages can show different calendars. In WP admin, Settings > ShootCal Web Calendar has a shortcode generator: paste a feed URL, pick a mode, and it checks the feed and hands you a ready-to-paste shortcode. Block users just add the “ShootCal Web Calendar” block and paste the URL in its sidebar.
Any iCal feed works:
The plugin fetches the feed server-side, caches it for 10 minutes, and renders a clean month grid. In availability mode it keeps only busy start/end times and discards all event detail; in full calendar mode it shows the event titles and times.
The plugin only reads the iCal feed server-side. The cached data lives in your WordPress site’s object cache or database (transient) and is purged when you clear the cache or change settings.
The feed URL lives in the shortcode or block where you use it – treat it like a password. Note that full calendar mode intentionally displays event titles and times, so only point it at a feed whose contents are meant to be public.
url or block field) plus a built-in shortcode generator – show different calendars on different pagesurl – the iCal (.ics) feed URL to display (required).mode – “availability” (free/busy shading, default) or “full” (show event titles + times).multi_session_day – availability mode only. “1” (default): a day with only timed sessions shows as “Limited”. “0”: any event marks the whole day “Booked”.limited_color – availability mode only. Hex color (e.g. #fce3a8) for the “Limited” day shading. Default: the built-in soft gold.booked_color – availability mode only. Hex color (e.g. #f6b9a3) for the “Booked” day shading. Default: the built-in soft coral.months – how many months to display (1-36). Default: setting value (auto-detected for ShootCal feeds).first_day – “0” for Sunday, “1” for Monday. Default: setting value.timezone – IANA timezone override for this embed. Default: your WordPress site timezone (or, for a ShootCal feed, the feed’s own).Example: [shootcal_web_calendar mode="full" url="https://example.com/feed.ics" months="3"]
Tip: build a shortcode under Settings > ShootCal Web Calendar – paste a feed URL, pick a mode, and it validates the feed and outputs the shortcode for you.
This plugin reads a calendar from the iCal feed URL(s) you put in your shortcodes or blocks. Each request is made from your web server (not your visitor’s browser) whenever a month grid is rendered and the 10 minute cache has expired. The plugin only ever contacts the URLs you configure; with none set, it makes no external requests. Only the request itself is sent – no data from your site or your visitors is transmitted. In availability mode the plugin keeps only busy start/end times, discarding titles, locations, attendees, and descriptions; in full calendar mode it also keeps event titles and times (by design, to display them).
The service contacted depends on the URL you use:
Google Calendar
If you use a Google Calendar secret iCal address, the request goes to Google’s calendar servers (calendar.google.com). This service is provided by Google. See Google’s Terms of Service (https://policies.google.com/terms) and Privacy Policy (https://policies.google.com/privacy).
ShootCal
If you use a ShootCal feed URL from the ShootCal Mac app, the request goes to the ShootCal feed service (feed.shootcal.com). This service is provided by Ryan Smith Photography. See the terms and privacy information at https://shootcal.com.
Other iCal feeds
If you use any other iCal URL (for example from Apple or Outlook), the request goes to whichever service hosts that feed. Refer to that provider’s own terms and privacy policy.