magento special price still showing after expiration, reindexed, flushed, special date & price removed, still

by   Last Updated July 11, 2019 23:09 PM

I have major problem with my magento 1.9 website

  1. Special prices are being shown in a front page despite it expired.
  2. I googled the problem.
  3. I reindexed data.
  4. I cleared cache.
  5. I removed special dates and prices via import.
  6. I checked products in inventory - they do not have special dates or prices.
  8. In result I have phone calls from pissed customers...

Please, if anyone experienced the same and have solution, kindly share.

Answers 3

If you have no strat date and end date for special price then in that case special price show always.

So make sure you have valid start date and end date for special price to expire special price.

Hope this will help you

Murtuza Zabuawala
Murtuza Zabuawala
August 24, 2016 07:55 AM

If special prices are only applied via "special price", "special price from date" and "special price to date" attributes, make sure that you did not override the attributes per store view. Also, as you already know, reindexing the price index and clearing the cache is necessary to see changes immediately.

If special prices are applied via promotional catalog price rules, make sure that the cronjob is running which updates special prices from catalog price rules nightly.

Another possible source of special prices are customer group prices (configured for each product as well).

Fabian Schmengler
Fabian Schmengler
August 24, 2016 08:04 AM

SQL Query to check special price and dates in bulk.

SELECT e.entity_id, e.sku,pd.store_id,pd.value AS special_price, fd.value AS special_from_date, td.value AS special_to_date  FROM catalog_product_entity AS e
INNER JOIN catalog_product_entity_decimal AS pd ON e.entity_id = pd.entity_id
INNER JOIN eav_attribute AS a ON pd.attribute_id = a.attribute_id
LEFT JOIN catalog_product_entity_datetime fd ON fd.entity_id = e.entity_id AND fd.attribute_id IN (SELECT attribute_id FROM eav_attribute WHERE attribute_code = 'special_from_date')
LEFT JOIN catalog_product_entity_datetime td ON td.entity_id = e.entity_id AND td.attribute_id IN (SELECT attribute_id FROM eav_attribute WHERE attribute_code = 'special_to_date')
WHERE a.attribute_code="special_price"
Liam Mitchell
Liam Mitchell
July 11, 2019 23:02 PM

Related Questions

Updated June 25, 2018 10:09 AM

Updated July 03, 2019 04:09 AM

Updated May 08, 2017 20:09 PM

Updated December 29, 2017 17:09 PM

Updated May 03, 2017 14:09 PM