=== ODT - Pickup and Delivery Date for WooCommerce ===
Contributors: wpdevstudio10
Tags: delivery date, pickup date, order scheduling, delivery time, woocommerce
Requires at least: 5.0
Tested up to: 7.0
Requires PHP: 7.0
Requires Plugins: woocommerce
Stable tag: 1.1.6
License: GPL-2.0+
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Give customers full control over their delivery or pickup date and time, right at WooCommerce checkout.

== Description ==

**ODT – Pickup and Delivery Date for WooCommerce** lets your customers pick exactly when their order arrives or gets picked up, directly from the WooCommerce checkout page. No more guesswork, no more "when will my order get here?" support tickets.

Perfect for bakeries, restaurants, florists, grocery stores, and any WooCommerce store that delivers or hands off orders on a schedule.

👉 [View the Live Demo](https://wpdevstudio.io/delivery-pickup-date-and-time-management-for-woocommerce/live-demo/)

= Why Store Owners Choose ODT =

 * Let customers self-schedule delivery or pickup, cutting down support requests.
 * Offer independent time slots for every day of the week.
 * Run multiple pickup locations, each with its own contact details.
 * Send automatic email notifications for every delivery or pickup order.
 * Customize every label, field, and position to match your store.

### ODT - Pickup and Delivery Date for WooCommerce Features

ODT gives you **30+ features** to fully control how and when your customers receive their orders, no coding required.

**📦 Delivery / Pickup Type**
 * Let customers choose delivery, pickup, or both.
 * Set either option as the default delivery type.
 * Automatically syncs with your WooCommerce Local Pickup shipping method.

**📅 Delivery / Pickup Date**
 * Add a Delivery Date field and/or a Pickup Date field to checkout.
 * Make each date field mandatory or optional.
 * Set a custom date format for delivery and pickup.
 * Fully customize field labels for delivery and pickup dates.

**⏰ Delivery / Pickup Time**
 * Add a Delivery Time field and/or a Pickup Time field to checkout.
 * Make each time field mandatory or optional.
 * Fully customize field labels for delivery and pickup times.
 * Set unique time slots for each day of the week (Monday–Sunday).
 * Define a Start Time and End Time per day.
 * Choose a 30-minute or 60-minute slot interval.

**📍 Pickup Locations**
 * Create unlimited pickup locations/stores.
 * Activate or deactivate any location instantly.
 * Add, edit, or remove a location's name, email, phone, and address from one popup.
 * Customize pickup location field labels to match your brand.

**📧 Email Notifications**
 * Delivery orders automatically notify the admin and the customer.
 * Pickup orders automatically notify the admin, the customer, and the pickup location's email.

**⚙️ Other Options**
 * Position the plugin module anywhere on the checkout page.
 * Add Custom CSS to match your store's design.
 * Show or hide the module heading, with custom heading text.

= Important: Classic Checkout Required =

ODT does not yet support the WooCommerce Blocks checkout. Your checkout page needs to use the classic [woocommerce_checkout] shortcode.

If you're on a fresh WooCommerce install, your checkout page is a Blocks page by default. To switch it: open the checkout page, remove the Blocks content, and add the [woocommerce_checkout] shortcode instead. WooCommerce has a guide on reverting to the classic checkout if you need help with the steps.

Once that's done, the ODT settings and checkout fields will appear as expected. Still stuck? [Contact our support team](https://wpdevstudio.io/contact-us/).

This plugin is not affiliated with or endorsed by WooCommerce or Automattic. "WooCommerce" is a trademark of Automattic Inc.

== Support ==

To enhance your experience with us and ensure smoother operations, we have a dedicated team available. If you encounter any issues while using our plugin or require assistance, please don't hesitate to reach out to us by visiting our <a target="_blank" href="https://wpdevstudio.io/contact-us/">support page</a> or mail us at <a href="mailto:support@wpdevstudio.io">support@wpdevstudio.io</a>.

== Installation ==

Option 1:

 1. Go to WordPress Dashboard->Plugins->Add New
 2. Search for "ODT - Pickup and Delivery Date for WooCommerce" using the search option
 3. Find the plugin and click the Install Now button
 4. After installation, click on the Activate Plugin link to activate the plugin.

Option 2:

 1. Unzip the downloaded plugin file and upload the extracted folder to the "/wp-content/plugins/" directory.
 2. Go to the plugin menu in WordPress and activate the plugin.
 3. Go to the plugin's landing page on the left sidebar menu.
 4. Now set your desired settings.

Option 3:

 1. Download the plugin zip file.
 2. Go to WordPress Dashboard->Plugins->Add New
 3. Click on the Upload Plugin link from the top
 4. Upload the downloaded zip file and click on Install Now
 5. After installation, click on the Activate Plugin link to activate the plugin.

== Screenshots ==

1. Timezone Settings

2. Order Settings

3. Delivery Date Settings

4. Pickup Date Settings

5. Delivery Time Settings

6. Pickup Time Settings

7. Pickup Location Settings

8. Pickup Locations

9. Other Settings

10. Checkout Page Delivery/pickup Date time Field View


== Frequently Asked Questions ==
= I don't want the delivery date and time options shown when the buyer opts for delivery =
You can disable the delivery date and time fields independently of the pickup date and time fields using the Delivery Date and Delivery Time settings tabs.

= I don't want to have date and time options at all =
You can disable the date and time options for both delivery and pickup, or disable them individually for pickup or delivery.

= I only want to have a delivery option with a delivery date and time field =
You can enable the delivery date and time field only for delivery by setting the *Enable delivery or pickup or both* option to "Delivery".

= I only want to have a pickup option with the pickup date and time field =
You can do so using the *Enable delivery or pickup or both* option.

= I want to give the customer the option to select pickup or delivery =
You can do that using the *Enable delivery or pickup or both* option.

= I want to give the option of pickup or delivery but don't want to have the option of date and time =
You can do that using the *Enable delivery date and time* option in the plugin.

= I don't want the pickup time/delivery time option =
You can disable the pickup and delivery time options independently in the Pickup Time and Delivery Time settings tabs.

= I want to change the text shown on the pickup and delivery selection button on the checkout page =
You can change them from the *Pickup label* and *Delivery label* options.

= I want the pickup to be selected as the default option when the buyer comes to the checkout page =
You can set a default delivery method using the *Default Delivery Type* option.

= I want to have the pickup/delivery time option, but don't want to make it a required field (in case the user wants to leave it empty) =
You can do that using the *Make delivery/pickup time a required field in checkout* option in the Delivery Time and Pickup Time settings tabs.

= I want to show my address to the customer when they select the pickup option =
You can do this from the "Pickup" settings tab.

= Can I insert holidays =
Yes, you can insert holidays. Once you mark a certain date as a holiday, that date will not be available to the user for selection.

= I want to make time a required field for pickup but optional for delivery =
You can do that using the independent Pickup Time and Delivery Time settings tabs.

= I want to make time an optional field for both pickup and delivery =
You can do that.

= I want to make the date field optional for pickup =
Yes, you can do that.

= I want to make the delivery date field optional =
Yes, you can do that.

= I want to make the date field optional for all order types (pickup or delivery) =
Yes, you can do that using the independent Pickup Date and Delivery Date settings tabs.

= I want to change the position of the date and time fields on the checkout page =
You can change the position of the date and time fields on the checkout page from the Other Settings tab. It offers several positions, including before customer details, before/after the billing form, before/after order notes, and before payment.

= I want to hide the time field for pickup and show it for delivery =
You can do that using the independent Pickup Time and Delivery Time settings tabs.

= I would like to show the pickup location as a drop-down =
Yes, the pickup location field is shown as a drop-down on checkout by default once enabled in the Pickup Location settings tab.


== Changelog ==

= Version 1.1.6 =
- [Added]: "Checkout Field Design" option (Others Settings tab) to switch the classic checkout's delivery/pickup fields between the existing look and a newer styled "Prebuilt Design".
- [Fixed]: Tips and special time-slot charges selected on the WooCommerce Checkout block now update the live Order Summary total, not just the placed order.

= Version 1.1.5 =
- [Fixed]: Minor Bug.

= Version 1.1.4 =
- [Fixed]: Minor Bug.

= Version 1.1.3 =
- [Fixed]: Minor Bug.
- [Changed]: Design Layout.

= Version 1.1.2 =
- [Fixed]: Minor Bug.
- [Changed]: Design Layout.

= Version 1.1.1 =
- [Fixed]: Minor Bug.

= Version 1.1.0 =
- [Fixed]: Minor Bug.
- [Fixed]: Admin Design Layout.

= Version 1.0.10 =
- [Fixed]: Minor Bug.

= Version 1.0.9 =
- [Fixed]: Minor Design Issue.
- [Fixed]: Minor Bug.

= Version 1.0.8 =
- [Fixed]: Minor Design Issue.

= Version 1.0.7 =
- [Fixed]: Minor Bug.

= Version 1.0.6 =
- [Fixed]: Minor Bug.

= Version 1.0.5 =
- [Fixed]: Minor Bug.

= Version 1.0.4 =
- [Fixed]: Minor Bug.

= Version 1.0.3 =
- [Fixed]: Update WooCommerce Checkout page shortcode.

= Version 1.0.2 =
- [Fixed]: Update WooCommerce HPOS compatibility.

= Version 1.0.1 =
- [Fixed]: Minor bugs fixed.

= 1.0.0 =
* Initial release.