Description
Tell visitors when you are open — from one settings screen. ZA-ONE Business Calendar shows a monthly calendar of your closed days and an opening hours table on any page, with a block or a shortcode. The same settings can also output LocalBusiness structured data (JSON-LD) for search engines.
It is made for small shops, salons, restaurants and clinics that have regular closed days (“closed every Wednesday and on the 2nd and 4th Tuesday”), yearly breaks and the occasional change.
What you can set
- Regular closed days — every week (e.g. every Wednesday) and the n-th weekday of each month (e.g. the 2nd and 4th Tuesday; a 5th weekday matches only in months that have one).
- Public holidays (Japan) — show them on the calendar, and choose whether you are closed, open, or follow the usual weekday rule on holidays. Japanese public holidays are calculated locally (fixed dates, Happy Monday holidays, equinox days, substitute holidays and citizens’ holidays, 2000–2099). No external calendar is downloaded.
- Closed every year — periods such as
12-29 01-03 Year-end holidays(a period can cross the new year). - Temporarily closed and open on a usual closed day — single dates with an optional label.
- Opening hours — up to two time slots per weekday (for a lunch break), with a “copy Monday to every day” button and a note line.
- Display — number of months (1–3), first day of the week, legend on/off, label texts and three colors.
- Easy to set up — a “getting started” card with three steps, dates picked from a calendar (or typed as text, also as
2026/11/20or12/29~1/3), checks while you type, and a preview that updates before you save.
When rules overlap, the order is: open on a usual closed day temporarily closed closed every year public holiday regular closed days open.
Show it on your site
- Blocks: Business Calendar (months, legend, previous / next buttons) and Business Hours (note, combined days, today’s hours), in the Widgets category. The editor shows the real output.
- Shortcodes:
[zaone_calendar months="2" start="" legend="1" nav="1"](startisYYYY-MM; empty = this month) and[zaone_hours note="1" merge="1" status="1"]. - Move to the previous and next months — visitors can look up to 12 months ahead, without reloading the page.
- Today’s hours and “Open now” — a line such as “Today, Nov 9 (Mon): 10:00–19:00” above the opening hours, with an “Open now” / “Closed now” badge.
- Days with the same hours shown together — for example “Mon–Fri 10:00–19:00” in one row (can be turned off). Closed n-th weekdays are noted, e.g. “(closed on the 2nd, 4th Tuesday)”.
- The calendar uses
<caption>, column headers and screen-reader text for every closed or special day, and closed days have a line along the bottom, so the information does not depend on color alone. The legend shows only the kinds of days in the months shown. - Works on dark themes, and prints two months side by side.
- “Today” is marked on the server and re-marked with the visitor’s date by a tiny script, so it stays right on cached pages.
- One small CSS file that inherits your theme’s fonts. Two or more months sit side by side and stack on phones.
Structured data (optional, off by default)
When enabled, a LocalBusiness (or a more specific type such as HairSalon, Restaurant or Dentist) JSON-LD block is added to the home page or to every page, with the name, URL, telephone, image, address, openingHoursSpecification (weekdays with the same hours are grouped) and specialOpeningHoursSpecification for closures and special openings in the next 90 days.
Built by
ZA-ONE builds websites for small businesses in Japan. If you would like a website for your shop, see zone-web.jp.
Planned for later versions
Several locations, hours past midnight, shorter hours on specific days, events and bookings, public holidays of other countries, calendar sync, PDF output.
External services
This plugin does not connect to any external service. Japanese public holidays are calculated locally.
Screenshots




Blocks
This plugin provides 2 blocks.
- Business Hours Opening hours table from the ZA-ONE Business Calendar settings.
- Business Calendar Calendar of closed days and special openings from the ZA-ONE Business Calendar settings.
Installation
- Install ZA-ONE Business Calendar from Plugins Add New, or upload the ZIP.
- Activate the plugin.
- Go to ZA-ONE Business Calendar in the admin menu and fill in the “Closed days” and “Opening hours” tabs. Save.
- Check the preview below the form (it updates before you save).
- Add the “Business Calendar” and “Business Hours” blocks (or the shortcodes) to a page.
FAQ
-
Is this an event calendar?
-
No. It is made to show your closed days and opening hours. There are no events, bookings or posts.
-
Does it show public holidays of other countries?
-
Version 1 includes Japanese public holidays only. You can add or remove days with the
zabc_holidaysfilter ($holidays,$year), for example$holidays['2026-12-24'] = 'Christmas Eve';. “Public holidays” must be set to “Japan”; with “Do not show public holidays” the filter does not run. -
Is the structured data required?
-
No. It is optional and off by default. Turn it on in the “Business info” tab.
-
Can I open late into the night (past midnight)?
-
Not in version 1. A time slot must close after it opens on the same day.
-
What about February 29 in “Closed every year”?
-
February 29 on its own is closed only in leap years. Include it in a period (for example 02-28 03-01) to be closed every year.
-
Will it work with page caching?
-
Yes. The calendar is plain HTML, and the “today” mark is set again in the browser.
-
Is “Open now” right on cached pages?
-
Yes. It is worked out again in the visitor’s browser, with your site’s time zone.
-
Does the plugin send anything to the developer?
-
No. There is no telemetry and no phone-home of any kind.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“ZA-ONE Business Calendar” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “ZA-ONE Business Calendar” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
- Initial release: closed days (weekly, n-th weekday, Japanese public holidays, yearly periods, single dates), special openings, opening hours with two slots, calendar and hours blocks and shortcodes, previous / next months, today’s hours and “Open now”, a live preview on the settings screen, and optional LocalBusiness structured data.
