All 20 Countdown Timer sections
Selling only while the clock allows
Campaigns → a campaign → Countdown → Buying. It is offered for a Fixed date and time while WooCommerce is active, and has three choices:
- Always, the default. The countdown is only a countdown and the products stay on sale whatever it says.
- Only after the countdown ends, for a launch. Until the end, the products the campaign covers cannot be bought. From the end, they can.
- Only until the countdown ends, for a limited offer. From the end, the products cannot be bought, and they stay that way until you change the campaign.
The products are the ones under Placement → Apply to, less Exclude products, wherever the timer itself is drawn, the bar included. That is why those two stay available whenever Buying is set, even for a campaign that only shows as a bar. Pages, Exclude and Audience play no part here: an add-to-cart request has no page, and the shop has to give the same answer everywhere.
While WooCommerce is switched off, the editor cannot show Buying, Apply to, Selection or Exclude products, and saving the campaign then leaves all four as they were. When WooCommerce is back, the campaign stops sales for the same products as before, not for the whole shop.
The shop refuses the sale through WooCommerce's own answer to whether a product can be bought, so WooCommerce does the rest. The Add to cart button goes from the product page and from listings, a link that adds to the cart is refused, a block theme's own buttons cannot add it either, and an item put in a cart earlier is taken out with WooCommerce's own message. Stock is never changed. On a variable product the size and colour choices go with the button, rather than leaving a greyed-out button and WooCommerce's "this product is unavailable" under them.
Where the button was, the product page says Available from and the date and time for a launch, or This offer has ended. for an offer that has closed, in your site's time zone and date format. The line goes wherever WooCommerce draws its add-to-cart area: a classic product page, a theme that moves the button, a page builder's Add to cart widget that uses WooCommerce's own, and the Add to Cart Form and Add to Cart with Options blocks. A page builder that draws a button of its own gets no line, though the shop still refuses the order.
A visitor watching a launch's timer reach zero on the product page is shown the page again a moment later, and it now has the button. The address of that reload carries trct_open= and a number, and a page cache is told never to keep that page, so it cannot hand back the copy from before the end. If the visitor's clock runs ahead of your site's, the page that comes back still has no button; it then asks once more when your site's clock reaches the end, and never after that.
At the moment sales open or close, the plugin empties the page caches it knows, the same ones it empties when a campaign is saved. WordPress runs that on the next visit that reaches it, so on a quiet site with every page cached it can be a little late. Saving the campaign again in between, without changing it, keeps that moment booked. The refusal itself is never late: WooCommerce asks again on every add to cart and at the checkout.
This only ever says no. A product that another plugin has taken off sale, such as a pre-order, subscription or catalogue mode, stays off sale while the campaign says sales are open. It also says no over another plugin's yes: a plugin that lets a customer buy something otherwise not for sale, such as a subscription renewed by hand, is overruled while the campaign keeps that product off sale. Leave such products out under Exclude products.
External and affiliate products are never stopped: their button leads to another site, and WooCommerce never lets them be bought here anyway. A grouped product is not stopped as a whole; each product in it follows its own campaign.
Saving a campaign that stops sales asks first, and names how far it reaches: "every product in the shop" when Apply to is All products and nothing is listed under Exclude products, otherwise "the products this campaign covers", with the date and your site's time zone. A launch whose end has already passed stops nothing, so saving it asks nothing; an offer whose end has passed closes sales as soon as it is saved, so that still asks. The Campaigns list and the editor then say Sales open at or Sales close at, and once the moment has passed, Sales opened at or Sales closed at.
To sell again, set Buying back to Always, switch the campaign off, delete it, or switch off every timer under Settings. Any of those takes effect at once.
Per-visitor, sale-date and cut-off campaigns always sell: a clock that differs from one visitor to the next, or starts again every day, cannot decide whether a product is for sale. Buying does not hide products, change their price or stock, or schedule a sale price. For that, use WooCommerce's own sale dates with a Product sale end date campaign.
Still stuck? Ask the developers who wrote it. We aim to reply within one business day.