{"id":351417,"date":"2026-08-11T11:21:18","date_gmt":"2026-08-11T11:21:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/delivery-pickup-date-and-time-slots-by-1045am\/"},"modified":"2026-08-11T11:20:42","modified_gmt":"2026-08-11T11:20:42","slug":"1045am-checkout-slot-scheduler","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/1045am-checkout-slot-scheduler\/","author":23545878,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.5.25","stable_tag":"1.5.25","tested":"7.0.3","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"1045AM Checkout Slot Scheduler for WooCommerce","header_author":"1045AM","header_description":"Lightweight delivery and pickup date\/time slot scheduling for WooCommerce Checkout Blocks.","assets_banners_color":"080809","last_updated":"2026-08-11 11:20:42","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":14,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.5.25":{"tag":"1.5.25","author":"1045am","date":"2026-08-11 11:20:42"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3641854,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3641854,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3641854,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3641854,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3641854,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.5.25"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[3148,13827,16222,169848,286],"plugin_category":[45],"plugin_contributors":[275173],"plugin_business_model":[],"class_list":["post-351417","plugin","type-plugin","status-publish","hentry","plugin_tags-checkout","plugin_tags-delivery","plugin_tags-pickup","plugin_tags-slots","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-1045am","plugin_committers-1045am"],"banners":{"banner":"https:\/\/ps.w.org\/1045am-checkout-slot-scheduler\/assets\/banner-772x250.png?rev=3641854","banner_2x":"https:\/\/ps.w.org\/1045am-checkout-slot-scheduler\/assets\/banner-1544x500.png?rev=3641854","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/1045am-checkout-slot-scheduler\/assets\/icon.svg?rev=3641854","icon":"https:\/\/ps.w.org\/1045am-checkout-slot-scheduler\/assets\/icon.svg?rev=3641854","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>1045AM Checkout Slot Scheduler for WooCommerce adds a focused delivery and pickup scheduling flow to WooCommerce Blocks checkout.<\/p>\n\n<p>The plugin lets store owners configure separate availability rules for delivery and pickup, including active weekdays, Saturday and Sunday overrides, start and end times, same-day order cutoff times, and different slot durations for delivery and pickup.<\/p>\n\n<p>It is designed for stores that need a simple checkout date and time selector without replacing WooCommerce shipping logic. Shipping methods, pickup methods, prices, coupons, and locations remain managed by WooCommerce and compatible shipping plugins.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Delivery and pickup date\/time selection for WooCommerce Blocks checkout.<\/li>\n<li>Separate slot duration for delivery and pickup.<\/li>\n<li>Weekday, Saturday, and Sunday schedules.<\/li>\n<li>Same-day cutoff time per schedule group.<\/li>\n<li>Automatic first available date and time selection.<\/li>\n<li>Configurable Europe, US, or ISO date display format.<\/li>\n<li>Configurable 24-hour or AM\/PM time display format.<\/li>\n<li>Order meta saved for admin, customer order details, and emails.<\/li>\n<li>Pickup and delivery context detected from WooCommerce checkout shipping methods.<\/li>\n<\/ul>\n\n<h3>Extensibility<\/h3>\n\n<p>The plugin is fully usable on its own and does not require any external service.<\/p>\n\n<p>Developer hooks are available for customization and include <code>dpts_1045am_settings<\/code>, <code>dpts_1045am_sanitize_settings<\/code>, <code>dpts_1045am_slot_duration_options<\/code>, <code>dpts_1045am_time_step_minutes<\/code>, <code>dpts_1045am_settings_tabs<\/code>, <code>dpts_1045am_render_settings_tab<\/code>, <code>dpts_1045am_checkout_config<\/code>, <code>dpts_1045am_pickup_locations<\/code>, <code>dpts_1045am_available_slots<\/code>, <code>dpts_1045am_validate_slot<\/code>, and <code>dpts_1045am_order_meta_saved<\/code>.<\/p>\n\n<h3>Requirements<\/h3>\n\n<ul>\n<li>WordPress 6.4 or newer.<\/li>\n<li>PHP 7.4 or newer.<\/li>\n<li>WooCommerce.<\/li>\n<li>WooCommerce Checkout Block.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install the ZIP from the WordPress admin Plugins screen.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to WooCommerce &gt; Checkout Slot Scheduler.<\/li>\n<li>Configure the general settings, delivery schedule, and pickup schedule.<\/li>\n<li>Test the checkout flow with both delivery and pickup selected.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20control%20shipping%20prices%3F\"><h3>Does this plugin control shipping prices?<\/h3><\/dt>\n<dd><p>No. Shipping rates and pickup rates remain controlled by WooCommerce and your shipping configuration. This plugin only adds the date and time selection flow.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20woocommerce%20blocks%20checkout%3F\"><h3>Does it work with WooCommerce Blocks checkout?<\/h3><\/dt>\n<dd><p>Yes. The frontend flow is built for WooCommerce Blocks checkout.<\/p><\/dd>\n<dt id=\"can%20delivery%20and%20pickup%20have%20different%20interval%20durations%3F\"><h3>Can delivery and pickup have different interval durations?<\/h3><\/dt>\n<dd><p>Yes. Delivery and pickup can each have their own slot duration. The plugin offers preset durations of 30, 60, and 120 minutes for safer setup.<\/p><\/dd>\n<dt id=\"are%20same-day%20cutoffs%20supported%3F\"><h3>Are same-day cutoffs supported?<\/h3><\/dt>\n<dd><p>Yes. You can configure order cutoff times for weekday, Saturday, and Sunday schedules.<\/p><\/dd>\n<dt id=\"what%20customer%20data%20does%20the%20plugin%20store%3F\"><h3>What customer data does the plugin store?<\/h3><\/dt>\n<dd><p>The plugin stores the selected order type, date, and time slot in the WooCommerce session and on the order. It does not send data to external services.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.25<\/h4>\n\n<ul>\n<li>Replaced remaining legacy frontend CSS, DOM, and asset identifiers with the plugin prefix.<\/li>\n<li>Removed the final legacy class-name conflict check from the WordPress.org build.<\/li>\n<\/ul>\n\n<h4>1.5.24<\/h4>\n\n<ul>\n<li>Replaced remaining legacy internal identifiers in the WordPress.org build.<\/li>\n<li>Added nonce validation to all plugin REST endpoints used by checkout.<\/li>\n<li>Updated order metadata keys to use the plugin prefix.<\/li>\n<\/ul>\n\n<h4>1.5.23<\/h4>\n\n<ul>\n<li>Aligned the text domain with the approved plugin slug.<\/li>\n<li>Added nonce validation to the checkout session REST endpoint.<\/li>\n<li>Renamed internal option, REST, Store API, and script identifiers to use the plugin prefix.<\/li>\n<\/ul>\n\n<h4>1.5.22<\/h4>\n\n<ul>\n<li>Moved the Upgrade content into the main settings tabs.<\/li>\n<li>Improved the Upgrade copy and added module icons.<\/li>\n<\/ul>\n\n<h4>1.5.21<\/h4>\n\n<ul>\n<li>Added Settings and Get PRO action links on the WordPress Plugins screen.<\/li>\n<\/ul>\n\n<h4>1.5.20<\/h4>\n\n<ul>\n<li>Added a separate informational Upgrade page for the optional add-on modules.<\/li>\n<li>Kept the included settings fully usable without inactive controls.<\/li>\n<\/ul>\n\n<h4>1.5.19<\/h4>\n\n<ul>\n<li>Updated the display name to 1045AM Checkout Slot Scheduler for WooCommerce.<\/li>\n<li>Kept the WordPress.org build focused on the included 30, 60, and 120 minute slot duration presets.<\/li>\n<li>Prepared the package for the requested permalink transition.<\/li>\n<\/ul>\n\n<h4>1.5.18<\/h4>\n\n<ul>\n<li>Renamed the plugin to 1045AM Checkout Slot Scheduler and updated the text domain for the requested slug change.<\/li>\n<li>Moved admin CSS and JavaScript from inline output to enqueued asset files.<\/li>\n<li>Removed upgrade-oriented admin messaging from the WordPress.org build.<\/li>\n<\/ul>\n\n<h4>1.5.17<\/h4>\n\n<ul>\n<li>Simplified the reference time panel to show only the slot-rule time and the WordPress timezone used by the plugin.<\/li>\n<\/ul>\n\n<h4>1.5.16<\/h4>\n\n<ul>\n<li>Improved spacing in the General settings card and highlighted the slot-rule reference time.<\/li>\n<\/ul>\n\n<h4>1.5.15<\/h4>\n\n<ul>\n<li>Added no-cache REST responses and browser-side stale slot filtering so same-day slots cannot remain selectable after their start time.<\/li>\n<li>Added an admin reference time panel showing the WordPress, server\/PHP, UTC, and slot-rule time used for availability checks.<\/li>\n<\/ul>\n\n<h4>1.5.14<\/h4>\n\n<ul>\n<li>Added a built-in Romanian fallback translation for Romanian WordPress locales while keeping English as the plugin source language.<\/li>\n<\/ul>\n\n<h4>1.5.13<\/h4>\n\n<ul>\n<li>Changed the plugin source strings to English so English WordPress sites no longer display Romanian text by default.<\/li>\n<li>Kept Romanian shipping keyword detection for compatibility with Romanian store setups.<\/li>\n<\/ul>\n\n<h4>1.5.12<\/h4>\n\n<ul>\n<li>Adjusted the admin page heading structure so global WordPress notices no longer appear inside the plugin header card.<\/li>\n<\/ul>\n\n<h4>1.5.11<\/h4>\n\n<ul>\n<li>Prevented the current same-day time slot from being offered once its start time has been reached.<\/li>\n<\/ul>\n\n<h4>1.5.9<\/h4>\n\n<ul>\n<li>Fixed saving the AM\/PM time display setting.<\/li>\n<\/ul>\n\n<h4>1.5.8<\/h4>\n\n<ul>\n<li>Fixed settings saves so date and time display formats are preserved when saving schedule tabs.<\/li>\n<li>Replaced slot duration number fields with preset duration dropdowns.<\/li>\n<li>Added schedule validation so same-day cutoff times cannot be later than the latest full slot allowed by the end time and slot duration.<\/li>\n<li>Stopped generating partial checkout slots at the end of a schedule.<\/li>\n<\/ul>\n\n<h4>1.5.7<\/h4>\n\n<ul>\n<li>Replaced admin schedule time text fields with dropdowns to prevent invalid time entries.<\/li>\n<li>Matched admin time dropdown labels to the selected 24-hour or AM\/PM display format.<\/li>\n<\/ul>\n\n<h4>1.5.6<\/h4>\n\n<ul>\n<li>Reorganized the admin schedule layout so weekday rules span the full width and weekend rules sit below for easier comparison.<\/li>\n<\/ul>\n\n<h4>1.5.5<\/h4>\n\n<ul>\n<li>Added configurable date and time display formats for checkout, orders, and emails.<\/li>\n<li>Kept internal storage and validation in standardized date\/time values for safer calculations.<\/li>\n<\/ul>\n\n<h4>1.5.4<\/h4>\n\n<ul>\n<li>Refined the admin checkbox styling for clearer selected states.<\/li>\n<\/ul>\n\n<h4>1.5.3<\/h4>\n\n<ul>\n<li>Aligned the General settings cards with the width of the delivery and pickup settings layout.<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Added developer hooks for extension integrations.<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Updated the admin, checkout, and directory assets to better match the 1045AM visual palette.<\/li>\n<li>Updated the clock mark to show 10:45.<\/li>\n<li>Added a legacy plugin conflict guard to prevent fatal errors when older builds are still active.<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Refined the admin settings interface with a cleaner product header, improved tabs, and clearer schedule cards.<\/li>\n<li>Refined the checkout date\/time selector visual design, focus states, calendar, and loading state.<\/li>\n<li>Added brand assets for the WordPress.org plugin directory.<\/li>\n<\/ul>\n\n<h4>1.4.4<\/h4>\n\n<ul>\n<li>Escaped checkout exception messages reported by Plugin Check.<\/li>\n<li>Removed the manual textdomain loading call discouraged for WordPress.org-hosted plugins.<\/li>\n<\/ul>\n\n<h4>1.4.3<\/h4>\n\n<ul>\n<li>Removed hidden placeholder files from the release package.<\/li>\n<li>Adjusted the tested WordPress version format for WordPress.org automated checks.<\/li>\n<\/ul>\n\n<h4>1.4.2<\/h4>\n\n<ul>\n<li>Added 1045AM branding to the public plugin name.<\/li>\n<li>Updated the plugin slug, text domain, readme, and package naming.<\/li>\n<\/ul>\n\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Updated the plugin slug, text domain, readme, and package naming for WordPress.org discoverability.<\/li>\n<\/ul>\n\n<h4>1.3.11<\/h4>\n\n<ul>\n<li>Added WordPress.org-ready metadata, readme, license information, and uninstall cleanup.<\/li>\n<li>Prepared public plugin packaging while keeping the existing checkout scheduling behavior.<\/li>\n<\/ul>\n\n<h4>1.3.10<\/h4>\n\n<ul>\n<li>Improved WooCommerce Blocks compatibility by saving the selected date and time through a custom REST endpoint.<\/li>\n<li>Improved frontend field persistence during checkout refreshes.<\/li>\n<\/ul>\n\n<h4>1.3.9<\/h4>\n\n<ul>\n<li>Reduced interference with the WooCommerce delivery and pickup selector.<\/li>\n<\/ul>\n\n<h4>1.3.6<\/h4>\n\n<ul>\n<li>Added separate slot durations for delivery and pickup.<\/li>\n<\/ul>","raw_excerpt":"Adds delivery and pickup date\/time slot controls to WooCommerce Blocks checkout.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/351417","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=351417"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/1045am"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=351417"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=351417"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=351417"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=351417"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=351417"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=351417"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}