BIGBAD bad to the bone
open
Store Hours
/ work / plugins / store-hours
Live · Free download
v1.5.1
Free — no purchase required
Pro optional

Store Hours

Order cutoffs that respect your kitchen's actual prep time.

Download Free →

→ the free version is fully usable on its own. Pro is an optional upgrade, not a paywall.

no card charged today →

Then $5/mo after your 14-day trial · cancel anytime in one click.

/ what it does

Your hours are scattered across Google, Facebook, your contact page, and a footer widget — and none of them agree. You're closed Sunday but the cart still takes Sunday delivery orders. You close at 9 but you're getting tickets at 8:54 the kitchen has no chance of fulfilling. Store Hours fixes both sides: a real-time open/closed display (sticky bar, floating widget, or shortcodes) plus weekly schedules, holiday overrides, and "closing soon" messaging. Pro adds order cutoff enforcement — the store goes "closed for orders" 30 minutes before you actually lock the door, so your kitchen isn't drowning at last call.

/ who it's for

If any of these sound like you

Restaurants and cafés taking 'are you open?' calls all day

Your phone rings ten times a day with the same question and your hours are already on your homepage somewhere. Sticky bar across every page, real-time open/closed status, holiday overrides — let the site answer it so your front-of-house doesn't have to.

Delivery shops, ghost kitchens, and dispensaries

Your kitchen needs 30 minutes to finish the last ticket. Your store closes at 9. Today an order came in at 8:54 and a one-star review came in at 9:42. Pro's cutoff enforcement closes the order window before you close the door, so prep time stays sane.

Local retail with weird hours

You're closed Monday, open late Thursday, closed early Christmas Eve. The weekly schedule editor handles multiple time ranges per day and the holiday overrides handle the rest. Sticky bar shows the truth in real-time so nobody shows up Monday at 7am.

Service businesses with appointment-driven hours

Salons, repair shops, studios, clinics — your hours change and your customers need to see the current truth, not last quarter's PDF. Set it once, four shortcodes drop the schedule into any page, and the floating widget gives a glance-at-status indicator from anywhere on the site.

/ features

What's in the box

Everything in the free column works on its own — install it and you're done. The pro column is an optional upgrade for power users; you never need it to use the plugin.

Free version

no purchase required · fully usable

  • Weekly schedule editor
    Mon-Sun with multiple time ranges per day (e.g. 09:00-12:00, 13:00-17:00).
  • Holiday overrides
    Closed days or custom hours for specific dates.
  • Sticky bar
    Top or bottom of every page. 3 style presets: minimal, pill, banner.
  • Floating widget
    Position-anywhere status indicator with conversational messaging.
  • 4 shortcodes
    [bbsh_store_hours], [bbsh_store_hours_today], [bbsh_store_hours_table], [bbsh_store_hours_countdown].
  • WooCommerce notices
    Optional cart and checkout notices when you're closed or closing soon.
  • "Closing soon" messaging
    Customizable threshold (e.g. notify visitors 30 min before close).
  • Color, font, shadow customization
    Make it match your site without writing CSS.

Pro adds (optional)

an upgrade, not a gate

  • Order cutoff enforcement
    Stop accepting orders X minutes before close. Bar goes "closed" even if the store is technically still open. Critical for delivery, kitchens, dispensaries.
  • Prep buffer
    Subtract minutes from cutoff time. Account for prep, packing, and out-the-door time.
  • Per-day cutoff overrides
    Different cutoff times for different days. Friday cutoff at 9pm, Sunday cutoff at 7pm.
  • Cutoff-aware countdown
    The countdown shortcode ticks to your cutoff time, not your close time. Customers see how long they have to actually order.
/ in action

Screenshots

/ pricing

No lite-version tricks

Free
Display & shortcodes
$0 forever
  • Weekly schedule + holidays
  • Sticky bar + widget + 4 shortcodes
  • WooCommerce notices
  • All styling options
Download from WordPress.org
Pro · 1 Site
For one delivery shop
$29 /year
  • Everything in Free
  • Order cutoff enforcement
  • Prep buffer + per-day overrides
  • Cutoff-aware countdown
  • Email support
Get Pro
Pro · 5 Sites
For agencies & multi-location
$79 /year
  • Everything in 1 Site
  • Use on up to 5 sites
  • Priority email support
Get 5-Site Pro
/ faq

Common questions

Does this require WooCommerce? +
No. BigBad Store Hours runs on any WordPress site. WooCommerce integration is optional and only affects cart/checkout notices when active.
What time format should I use for hours? +
Both work: - **24-hour:** `10:00-21:00` or `09:30-17:15` - **12-hour:** `10am-9pm` or `9:30am-5:15pm` Use `start-end` and separate multiple ranges with commas: `09:00-12:00, 13:00-17:00`.
Can I disable the floating bar and just use shortcodes? +
Yes. Disable the bar in **Settings → Display** and place shortcodes wherever you want.
How do holiday overrides work? +
In **Settings → Holidays**, enter a date in `YYYY-MM-DD` format and either mark it closed or set custom hours. Holiday overrides take precedence over the weekly schedule for that date.
What's the difference between the free and pro versions? +
The free version shows your hours and tells customers if you're open. The pro version adds **order cutoff enforcement** — so your delivery shop stops accepting orders 30 minutes before close, even though the door is technically still open. If you're running a kitchen, dispensary, or anything where the staff needs prep/wrap-up time after orders stop, that's what you want.
Can I show different hours on different pages? +
The free version uses one global schedule. The pro version supports per-page overrides via shortcode parameters.
Does the countdown count to my close time or my cutoff time? +
**Free:** counts to your close time. **Pro:** counts to your cutoff time (so customers know how long they actually have to place an order).
Will it slow down my site? +
No. The plugin renders on the server, caches the current state, and only re-evaluates when a minute crosses a schedule boundary. There's no JS framework, no API calls, no tracking.
Does it work with caching plugins? +
Yes — the bar uses a small JS heartbeat to keep the displayed state accurate even when the page is served from cache.
Can I translate it? +
Yes. The plugin is translation-ready and uses standard WordPress i18n functions. PRs welcome on the WordPress.org forum.
Where do I get support? +
For free version users: the WordPress.org plugin support forum. For pro users: email **support@bigbad.agency** with your license key.