Directory / plugin

IngotForge Opening Hours Indicator

v2.1.1 · by ingotpress

Display open/closed status, weekly business hours and local clocks, with flexible schedules, manual holidays and optional API integrations.

About this plugin

Show when your business is open. Create a schedule and display its status, weekly timetable or local clock with shortcodes.

Key features

  • Independent schedules and timezones for multiple locations.
  • Split shifts, overnight hours and 24-hour opening.
  • Manual holidays, recurring closures, special hours and temporary overrides.
  • Custom labels, colours, typography and indicator styles.
  • Optional next opening or closing time and live status updates.
  • Optional holiday and time services; no external account is needed for manual schedules.
  • Schedule duplication, import/export and a built-in manual.

Scripts and styles are included locally, with no CDN dependency or telemetry. Instructions: Opening Hours > Manual & tutorials.

External services

All integrations are optional and require administrator authorization. Requests run on an administrator refresh or a scheduled WordPress task, not from visitors’ browsers or normal shortcode display.

Holiday requests send the configured country, optional subdivision, year/date and relevant filters; clock requests send a UTC timezone. Credentials are included when required. Operators also receive your server’s IP address, request time and plugin-version user agent. The plugin does not add visitor IPs, cookies, names, email addresses or page content to these requests.

Choose a plan permitting your intended use and caching, including any commercial-use, sponsorship or attribution obligations. Credentials are not supplied. Cached results expire; keep scheduled tasks working and clear caches on subscription cancellation. Providers govern their own logs and retention.

Nager.Date / Nager.Holidays – holiday dates

Endpoint: https://nagerholidays.com/api/v4/Holidays/{country}/{year}. Sends country/year and filters national or subdivision dates locally. Check sponsorship requirements for commercial use.
Terms | Privacy

OpenHolidays API – public holidays

Endpoint: https://openholidaysapi.org/PublicHolidays. Sends country, language, date range and optional subdivision. Observe its ODbL data-license requirements.
Terms/data licence | Privacy

Calendarific – holiday dates

Endpoint: https://calendarific.com/api/v2/holidays. Sends API key, country/year, optional location and holiday type. Cached dates expire within 30 days. Provide required attribution unless your agreement waives it.
Terms | Privacy

Abstract Holidays – holiday dates

Endpoint: https://holidays.abstractapi.com/v1/. Sends API key, country/year and month/day in daily mode. Daily mode covers checked dates only; annual access depends on your plan.
Terms | Privacy

API Ninjas – holidays and world time

Endpoints: https://api.api-ninjas.com/v2/holidays and https://api.api-ninjas.com/v1/worldtime. Sends the API key plus country/year and optional type for holidays, or Etc/UTC for time. A storage-eligible plan and explicit entitlement confirmation are required.
Plans | Terms | Privacy

TimeZoneDB – clock synchronization

Endpoint: https://api.timezonedb.com/v2.1/get-time-zone. Sends API key, JSON format, zone lookup and Etc/UTC. Use HTTPS-capable access and a plan allowing your intended commercial or non-commercial use.
Terms and privacy

IPGeolocation.io Time Zone – clock synchronization

Endpoint: https://api.ipgeolocation.io/v3/timezone. Sends API key and Etc/UTC; it does not look up visitors’ IP addresses. Check commercial-use licensing.
Terms | Privacy

timezone.io WorldTime compatibility – clock synchronization

Endpoint: https://worldtime.timezone.io/api/timezone/Etc/UTC. Requests UTC time without a key. Public-service availability may vary.
Terms | Privacy

HolidayAPI-, Enrico- and TimeAPI-compatible adapters

These have no default endpoint. Each requires an authorized HTTPS endpoint, the actual operator’s terms and privacy URLs, and confirmation of permitted requests and caching. Without these settings, no new request is made.

  • HolidayAPI-compatible: sends key, country/subdivision, year and optional public filtering for holiday dates; cache use is capped at 24 hours.
  • Enrico-compatible: sends getHolidaysForYear, year, country, optional region/type and configured authentication for holiday dates.
  • TimeAPI-compatible: sends timeZone=Etc/UTC and configured authentication for clock synchronization.

Provide your operator’s actual policy links in the settings and, where appropriate, your site’s privacy notice. Documentation is available in the built-in Service directory.

Custom holiday or clock service

Configure a public HTTPS GET JSON endpoint, field mappings and optional header, query-key or Bearer authentication. It receives configured parameters and applicable country/region/year/date or UTC-timezone placeholders. No visitor data is added. Enter the actual operator’s terms/privacy URLs and authorize permitted caching before use. No service or policy URL is preselected; the plugin stores, but does not certify, the supplied policies. OAuth, signed requests, POST-only APIs, XML and NTP are not supported.

Privacy

Schedules, settings, credentials and service caches are stored in your WordPress database. Public schedules expose display information through a read-only endpoint; private schedules do not produce public output. Credentials are excluded from public output and exports. Supported encryption is required to save new keys. No tracking cookies or visitor analytics are added. Adapt your site’s privacy notice to the services you enable; a sample is included in TECHNICAL-GUIDE.md.

Developer Integration

See Opening Hours > Manual & tutorials and the included TECHNICAL-GUIDE.md for shortcode options, hooks, API access, migration instructions and data-management details.

Plugin tags