Descripción
Multiple Sale Prices Scheduler extends WooCommerce’s native sale scheduling functionality by allowing you to schedule multiple sale prices for each product, each with its own start and end date and time (down to the minute).
Perfect for planning seasonal sales, flash sales, promotional campaigns, and dynamic pricing strategies in advance.
Why Multiple Sale Prices Scheduler?
- All-in-one free solution combining: multiple sales per product, variations support, CSV import/export, activity log, overlap priority, dashboard widget and Command Palette
- Integrated directly into the product editor — no separate complex screens to learn
- Lightweight: no build process, no external dependencies, no JavaScript frameworks
- HPOS-ready (High-Performance Order Storage) and ready for the WordPress Command Palette (Cmd+K / Ctrl+K)
- Built and maintained by a WordPress specialist with 15+ years of experience publishing plugins on WordPress.org
Key Features
- Schedule multiple sale prices per product
- Dynamic pricing: Schedule both discounts and price increases
- Each sale has its own start and end date and time, down to the minute
- Configurable check frequency (every 5, 10, 15, 30 minutes or hourly)
- Works with simple and variable products
- Configurable priority when sales overlap
- Import and export scheduled sales via CSV
- Activity log with configurable retention period
- Automatic deletion of expired sales
- Admin notifications when sales activate or end
- Alert notifications before sales expire
- Dashboard widget with sales overview
- Compatible with HPOS (High-Performance Order Storage)
- Automatic sale activation and deactivation via cron
- Import existing WooCommerce sales
- Clean orphaned scheduled sales from deleted products
- Command Palette integration (Cmd+K / Ctrl+K) for quick access to export and overview
Use Cases
- Plan multiple seasonal sales in advance
- Schedule different prices for different promotional periods
- Implement dynamic pricing for high-demand periods (hotels, events, tickets)
- Seasonal price adjustments (peak season vs. off-season)
- Manage flash sales and special offers
- Coordinate pricing across multiple products
- Track pricing history with activity log
- Receive alerts when sales are about to end
- Automatically clean expired sales
How It Works
Real example: Black Friday + Christmas + January Sale, all scheduled at once
Imagine you sell a t-shirt at 29,99 € and want three sales planned in November:
- Edit the product in WooCommerce find the “Scheduled sale prices” section
- Add: 19,99 € from Nov 28 to Dec 1 (Black Friday)
- Add: 24,99 € from Dec 20 to Dec 26 (Christmas)
- Add: 17,99 € from Jan 5 to Jan 15 (January sale)
- Save the product once. Done.
Each sale can start and end at an exact time (hour and minute), so flash sales begin and end right when you plan them. The plugin activates and deactivates each price automatically using WordPress cron, which you can run as often as every 5 minutes. You can also schedule prices higher than the regular price for peak-demand periods (hotels, events, tickets), enabling dynamic pricing strategies for seasonal demand or special events.
Settings Options
- Default overlap priority (lowest, highest, first, last)
- Enable/disable activity log
- Log retention period (30-365 days)
- Automatic deletion of expired sales (never, 30-365 days)
- Sale check frequency (every 5, 10, 15, 30 minutes or hourly)
- Sale activation notifications
- Notifications before sale ends (1-30 days)
- Overlap warnings when creating schedules
Requirements
- WordPress 5.8 or higher
- WooCommerce 6.0 or higher (tested up to 10.9)
- PHP 7.4 or higher
Support
Need private support or custom development?
Do you need one-on-one help, priority troubleshooting, or a custom feature, integration, or tweak built specifically for your site? I offer private support and custom development. Just contact me and tell me what you need.
Need help or have suggestions?
Love the plugin? Please leave us a 5-star review and help spread the word!
About AyudaWP.com
We are specialists in WordPress security, SEO, AI and performance optimization plugins. We create tools that solve real problems for WordPress site owners while maintaining the highest coding standards and accessibility requirements.
Capturas









Instalación
- Upload the plugin files to
/wp-content/plugins/multiple-sale-prices-scheduler/ - Activate the plugin through the ‘Plugins’ menu in WordPress
- Go to Marketing > Sales Scheduler to see the overview and configure settings
- Edit any product and find the “Scheduled sale prices” section
Preguntas frecuentes
-
Does this work with variable products?
-
Yes, the plugin fully supports both simple and variable products. Each variation can have its own scheduled sales and priority settings.
-
What happens if two sales overlap?
-
You can configure the priority (lowest price, highest price, first scheduled, or last scheduled) both globally in settings and per product/variation. The plugin will automatically apply the sale price according to your priority setting.
-
Can I import existing WooCommerce sales?
-
Yes, the plugin includes an “Import current sale” button that converts existing WooCommerce sales into scheduled sales, allowing you to add more sales to the same product.
-
Can I bulk import sales?
-
Yes, use the CSV import feature in the settings page to bulk import scheduled sales for multiple products. You can also download a CSV template to see the required format.
-
Is this compatible with HPOS?
-
Yes, the plugin is fully compatible with WooCommerce’s High-Performance Order Storage (HPOS).
-
How often does the plugin check for sales to activate?
-
By default WordPress cron checks every hour, but you can change this to every 5, 10, 15 or 30 minutes in the Settings tab. More frequent checks make exact start and end times more precise. Note that WordPress cron depends on your site receiving traffic to run on schedule.
-
Can I schedule sales by exact time, not just by date?
-
Yes. Since version 1.3.0 each scheduled sale has a start and end time (hour and minute), interpreted in your store’s timezone. Sales created before 1.3.0 keep working: with no specific time set, they start at the beginning of the first day and end at the end of the last day.
-
Can I automatically delete old expired sales?
-
Yes, you can configure automatic deletion of expired sales after a specified period (30, 60, 90, 180, or 365 days) in the General settings tab. This helps keep your database clean.
-
How long are activity logs kept?
-
You can configure log retention from 30 to 365 days in the General settings. Logs older than the retention period are automatically deleted.
-
What happens to scheduled sales when I delete a product?
-
You can use the “Clean orphaned schedules” button in the Overview tab to remove all scheduled sales from deleted or invalid products.
-
Can I get notified before a sale ends?
-
Yes, you can enable notifications to alert you a specified number of days (1-30) before a sale expires, giving you time to plan your next promotion.
-
Can I schedule price increases, not just sales?
-
Yes! While the plugin is designed primarily for scheduling sale prices (discounts), you have complete flexibility to set any price – including prices higher than the regular price. This allows you to handle seasonal pricing adjustments, high-demand periods, or other dynamic pricing strategies.
Note: If you schedule a price higher than the regular price, the product will simply show the scheduled price without displaying a “sale” badge or strikethrough pricing.
-
Does this plugin work with the WordPress Command Palette?
-
Yes! Since version 1.2.0, the plugin registers two commands in the WordPress Command Palette (Cmd+K on Mac, Ctrl+K on Windows): “Export scheduled offers to CSV” for quick CSV downloads, and “Show scheduled offers” to jump directly to the overview page. These commands work from any admin screen (requires WordPress 6.3 or higher).
Reseñas
Colaboradores y desarrolladores
Este software es de código abierto. Las siguientes personas han contribuido a este plugin.
Colaboradores“Multiple Sale Prices Scheduler” ha sido traducido a 2 idiomas locales. Gracias a los traductores por sus contribuciones.
Traduce “Multiple Sale Prices Scheduler” a tu idioma.
¿Interesado en el desarrollo?
Revisa el código, echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.
Registro de cambios
1.3.0
- New: Exact-time scheduling — each scheduled sale now has a start and end time (hour and minute), not just a date, for precise flash sales
- New: Configurable check frequency — choose how often sales are checked for activation (every 5, 10, 15, 30 minutes, or hourly) from the Settings tab
- Improved: Scheduled times now display in your site’s timezone using your configured time format, across the product editor, overview and dashboard
- Fix: Sales now activate and deactivate at your store’s correct local time (previously activation could be offset by the site timezone)
- Fix: Security — AJAX actions now verify per-product edit permissions, CSV export neutralizes spreadsheet formula injection, and notification dismissal requires a valid nonce and capability
- Fix: Reject zero or negative sale prices and strictly validate submitted dates and times
For older changelog entries, please check the changelog.txt file.
