Description
Obydullah Order Time Slots for WooCommerce lets you define configurable time slots for pickup and delivery orders, controlling how many orders your store can accept in each window.
Features
- Time Slot Generation — Automatically creates slots from your opening hours with configurable duration (5–120 minutes)
- Capacity Limiting — Set a maximum number of orders per slot to prevent overloading your kitchen
- Pickup & Delivery — Support both order types with separate labels and per-type capacity awareness
- Checkout Integration — Customers select their preferred time slot and order type on both the classic shortcode checkout and the block-based Checkout
- Race Condition Protection — Double-checks slot availability after payment to prevent overselling during high traffic
- Admin Settings — Configure slot duration, max orders, opening hours per day, and enable/disable pickup or delivery
- Shop Open/Closed Notices — Automatically shows “shop closed” messages outside of configured business hours
- Translation Ready — Full text domain
obydullah-order-time-slotswith/languagesdomain path
How It Works
- Configure your opening hours and slot settings under WooCommerce > Order Slots
- Customers see available time slots on the checkout page based on current day and capacity
- The plugin validates slot availability at checkout and saves the selected slot as order meta
- Admins can view slot data in order details
Use Cases
- Restaurants limiting delivery orders per time window
- Bakeries controlling pickup slot capacity
- Food trucks scheduling order windows
- Any business that needs to throttle orders across the day
Privacy
This plugin processes all data locally on your WordPress installation. No data is sent to external servers. No tracking or telemetry is collected. Order slot selections are stored as order meta in your WooCommerce database.
Installation
- Upload the
obydullah-order-time-slotsfolder to/wp-content/plugins/ - Activate the plugin through the Plugins menu
- Navigate to WooCommerce > Order Slots in your admin menu
- Configure your opening hours and slot settings
- Ensure WooCommerce pages (Shop, Cart, Checkout) are set up
FAQ
-
Does this plugin require WooCommerce?
-
Yes. WooCommerce must be installed and active.
-
Can I customize the slot duration?
-
Yes. Slot duration can be set from 5 to 120 minutes in 5-minute increments under WooCommerce > Order Slots.
-
What happens when a slot is full?
-
The slot is no longer displayed as an available option on the checkout page. If a slot fills up during checkout (race condition), the order is cancelled with a notice.
-
Can I disable pickup or delivery?
-
Yes. Both pickup and delivery can be independently enabled or disabled in the settings.
-
Does this work with High-Performance Order Storage (HPOS)?
-
Yes. The plugin uses the WooCommerce CRUD API and is fully HPOS-compatible.
-
Does this work with the block-based Checkout?
-
Yes. The plugin supports both the classic
[woocommerce_checkout]shortcode checkout and the block-based Checkout, using the WooCommerce Additional Checkout Fields API. Required-field validation and slot availability checks work on both. -
Can I customize the checkout field markup?
-
The fields are rendered with the standard
woocommerce_form_field()API, so you can adjust them via thewoocommerce_form_field_argsfilter in your theme or a custom plugin.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Obydullah Order Time Slots for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Obydullah Order Time Slots for WooCommerce” 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
- Time slot generation from configurable opening hours
- Capacity limiting with max orders per slot
- Pickup and delivery order type support
- AJAX-powered slot refresh on checkout
- Race condition protection with re-validation
- Admin settings page under WooCommerce menu
- Shop open/closed notices
- Block checkout support via the Additional Checkout Fields API
- Plugin settings removed on uninstall
- Translation ready with full text domain support
