WC Price History for Omnibus


Track WooCommerce© Products prior prices history and display the lowest price in the last 30 days. This plugin allows your WC shop to be compliant with European Commission Directive 98/6/EC Article 6a which specifies price reduction announcement policy.


The plugin works out of the box: install and activate and your discounted products will be compatible with Omnibus directive!

Plugin is configurable via WooCommerce > Price History screen. You can configure:
↪ Where to display the price history information:
» on the single product page
» upsell and related products
» main shop page
» product category pages
» product tag pages
↪ When to display minimal price (always or only when the product is on sale)
↪ How to count minimal price (the minimal from the moment product went on sale to 30 days before that moment or the minimal price from today to 30 days ago)
↪ How many days take into account when calculating minimal price (30 days by default)
↪ How to display the price history information

At the configuration screen you will find additional information how to configure the plugin to be compliant with Omnibus directive (European Commission Directive 98/6/EC Article 6a) and link to legal acts.


  • Lowest price information displayed on single product page.
  • WC Price History configured according to Omnibus directive.


  • Unzip the directory in wp-content/plugins
  • Go to wp-admin > Plugins and activate the plugin

Preguntas frecuentes

How to configure plugin to be compliant with Omnibus directive

You don’t have to do anything special, the default settings are compliant with Omnibus directive!

However, in case you misconfigured the plugin, here are steps to take to make it compliant again (please note similar suggestions hints you will see on Settings screen):

  1. Go to WooCommerce > Price History screen
  2. Set Display on to Single product page
  3. Set Display minimal price to Only when product is on sale
  4. Set Count minimal price from to Day before product went on sale
  5. Set Number of days to use when counting minimal price: to 30 days
  6. For each product being on sale, go to its edit screen and set Sale price dates from to the date when the product went on sale.

Is plugin working well with variable products?

Yes, the plugin is compatible with product taxes and variable products (it tracks minimal price for each variation individually).

Is there any shortcode I could use to display minimal price?

If you want to display the lowest products price in other place than default, you can use shortcode wc_price_history. A few examples:

Display the lowest price on single product page (without passing product ID as argument), currency symbol attached:
This product low is [wc_price_history]

Display the lowest price of the other product, currency symbol attached:
The product with ID 3 had the lowest price [wc_price_history id=3]

Display without currency symbol:
The product with ID 3 had the lowest price [wc_price_history id=3 show_currency=0]

For some products being on sale, plugin shows minimal price from current day, why?

This is because you have not set Sale price dates from for these products. Go to the product edit screen and set Sale price dates from to the date when the product went on sale.

Tip: All the products which are On sale but does not have Sale price dates from set will be logged to WooCommerce logs. Go to WooCommerce > Status > Logs to see the list of products (in right top corner preselect log which name starts with wc-price-history).

Can I adjust minimal price before being it displayed?

Yes, you can use filter wc_price_history_lowest_price_html_raw_value_taxed:


add_filter( ‘wc_price_history_lowest_price_html_raw_value_taxed’, function( $price, $wc_product ) {
// do something with $price
return $price;
}, 10, 2 );

I have a problem with the plugin, or I want to suggest a feature. Where can do this?

Please submit the GitHub issue.


14 de enero de 2023
Really good plugin - really good and simple solution for Omnibus law in EU.
9 de enero de 2023 4 respuestas
Dzięki za wtyczkę. Bardzo przydatna darmowa wersja w obecnym czasie szczegółnie dla małych sklepów 🙂 Jedna uwaga: W przypadku gdy w sklepie wprowadzane są ceny NETTO dla produktu ale wyświetlane na frontendzie ceny BRUTTO to wtyczka pokazuje ostatnią cenę niestety NETTO. Przydała by się opcja wyboru jak ma być wyświetlana cena - Netto czy brutto.
6 de enero de 2023 1 respuesta
Thank you for the great work. Very useful. It could be that there is a choice of display only for discounted products and not for all. Furthermore, there could be a choice of display only on the product page and not in the loop.The plugin is under development and is fully functional.
2 de enero de 2023 2 respuestas
Dzięki za darmową wtyczkę. Jako że sam pracuję nad czymś podobnym chciałem tylko zwrócić uwagę na dwie kwestie. Po pierwsze dobrze byłoby aby dało się to wyłączać na poszczególnych stronach. Idealnie żeby cen wyświetlała się tylko w szczegółowym widoku. Po drugie z tego co się orientowałem to sprzedawca ma obowiązek pokazać tą cenę tylko w przypadku Promocji. Także dobrze byłoby aby dało się to skonfigurować. Inna kwestia, że według prawa ma to być cena nie za ostatnie 30 dni, ale za 30 dni przed wprowadzeniem obniżki.
Leer todas las 7 reseñas

Colaboradores y desarrolladores

Este software es de código abierto. Las siguientes personas han contribuido a este plugin.


"WC Price History for Omnibus" ha sido traducido a 2 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce "WC Price History for Omnibus" 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


  • Improvement: Start saving the price before change with timestamps for last midnight and for 1 second ago. (#58)
  • Improvement: Clean history from empty values before save.
  • Fixed: Do not copy product price history when duplicating product. (#50)


  • Fixed: When price displayed with shortcode, it was not respecting sale settings and it resulted in showing the current price.


  • Fixed: When price displayed with shortcode, and it was zero, it should not be displayed.


  • Added filter to modify the minimal price before it is displayed


  • Added option to include sale price when counting minimal price (#41)
  • Added option to display line through over minimal price (#42)


  • Fixed: Placeholder %s was displayed instead of the lowest price after plugin update. (#39)
  • Improvement: Rearranged the plugin option’s page.
  • Improvement: Added settings link to plugins page.


  • Fix: Wrong number of decimals in price history information when displayed with shortcode (#36)


  • Optimization: moved class loading to plugins_loaded hook


  • Fix: Fixed fatal error.


  • Fix: Taxes not applied to the price when displayed with shortcode (#34).


  • Fixed issue with timezones offsets when saving history


  • Added toggle to display minimal price for related/upsell products on the single product page


  • Fixed problem that product had to be at least once manually saved to start tracking the history
  • Added ability to decide if minimal price should be displayed on product category pages and product tag pages


  • Handled variable products
  • Handled product taxes
  • Settings screen: count minimal price is not hidden now and label is adjusted to explain it applies only for products being on sale
  • Handled case when WooCommerce plugin is not active
  • Optimized minimal price calculation class


  • New: “30-day low” text is configurable now on Settings screen
  • Updated documentation and hint texts for better plugin usability


  • Added wc_price_history shortcode support
  • Added settings screen
  • Added ability to define where the price history should be displayed
  • Added ability to define how many days should be considered when calculating the lowest price
  • Added ability to define if the price history should be displayed only for products with price reduction
  • Added ability to define if minimal price count should start from current day or the first day of the sale
  • Link to European Commission Directive 98/6/EC Article 6a added to plugin settings screen
  • Added logging products which are on sale but do not have sale start date set


  • Plugin rewritten to store prices log in custom fields instead of post revisions
  • Added migration logic between revisions and custom fields


  • Initial release.