Title: ZA-ONE Business Calendar
Author: yuyatanaka
Published: <strong>November 11, 2026</strong>
Last modified: November 11, 2026

---

Search plugins

![](https://ps.w.org/zaone-business-calendar/assets/banner-772x250.png?rev=3795529)

![](https://ps.w.org/zaone-business-calendar/assets/icon-256x256.png?rev=3795529)

# ZA-ONE Business Calendar

 By [yuyatanaka](https://profiles.wordpress.org/yuyatanaka/)

[Download](https://downloads.wordpress.org/plugin/zaone-business-calendar.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/zaone-business-calendar/#description)
 * [Reviews](https://wordpress.org/plugins/zaone-business-calendar/#reviews)
 *  [Installation](https://wordpress.org/plugins/zaone-business-calendar/#installation)
 * [Development](https://wordpress.org/plugins/zaone-business-calendar/#developers)

 [Support](https://wordpress.org/support/plugin/zaone-business-calendar/)

## 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/20` or `12/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"]` (`start`
   is `YYYY-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](https://zone-web.jp/en/).

#### 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

[⌊The calendar on the front end: two months with closed days, a special opening,
public holidays, the previous / next month buttons and the legend.⌉⌊The calendar
on the front end: two months with closed days, a special opening, public holidays,
the previous / next month buttons and the legend.⌉[

The calendar on the front end: two months with closed days, a special opening, public
holidays, the previous / next month buttons and the legend.

[⌊The opening hours: today's hours with "Open now", days with the same hours shown
together, and a note.⌉⌊The opening hours: today's hours with "Open now", days with
the same hours shown together, and a note.⌉[

The opening hours: today’s hours with “Open now”, days with the same hours shown
together, and a note.

[⌊The settings screen: the three "getting started" steps and the "Closed days" tab
with its date lists.⌉⌊The settings screen: the three "getting started" steps and
the "Closed days" tab with its date lists.⌉[

The settings screen: the three “getting started” steps and the “Closed days” tab
with its date lists.

[⌊The Business Calendar block in the block editor, with help texts and the notice
shown before closed days are chosen.⌉⌊The Business Calendar block in the block editor,
with help texts and the notice shown before closed days are chosen.⌉[

The Business Calendar block in the block editor, with help texts and the notice 
shown before closed days are chosen.

## 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

 1. Install ZA-ONE Business Calendar from **Plugins  Add New**, or upload the ZIP.
 2. Activate the plugin.
 3. Go to **ZA-ONE Business Calendar** in the admin menu and fill in the “Closed days”
    and “Opening hours” tabs. Save.
 4. Check the preview below the form (it updates before you save).
 5. 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_holidays` filter (`$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.

Contributors

 *   [ yuyatanaka ](https://profiles.wordpress.org/yuyatanaka/)

[Translate “ZA-ONE Business Calendar” into your language.](https://translate.wordpress.org/projects/wp-plugins/zaone-business-calendar)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/zaone-business-calendar/),
check out the [SVN repository](https://plugins.svn.wordpress.org/zaone-business-calendar/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/zaone-business-calendar/)
by [RSS](https://plugins.trac.wordpress.org/log/zaone-business-calendar/?limit=100&mode=stop_on_copy&format=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.

## Meta

 *  Version **1.0.0**
 *  Last updated **4 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.3 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [business hours](https://wordpress.org/plugins/tags/business-hours/)[calendar](https://wordpress.org/plugins/tags/calendar/)
   [holidays](https://wordpress.org/plugins/tags/holidays/)[Opening Hours](https://wordpress.org/plugins/tags/opening-hours/)
   [schema](https://wordpress.org/plugins/tags/schema/)
 *  [Advanced View](https://wordpress.org/plugins/zaone-business-calendar/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/zaone-business-calendar/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/zaone-business-calendar/reviews/)

## Contributors

 *   [ yuyatanaka ](https://profiles.wordpress.org/yuyatanaka/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/zaone-business-calendar/)