Плагин цены товара
-
Написал плагин(костыль) для перевода цены из доллара в гривну (woocommerce). Но есть проблема, цены пересчитываются только при обновление товара или когда добавить новий товар. Как это исправить?
function option_install(){ } function option_unistall(){ } register_activation_hook(__FILE__,'opinions_install'); register_deactivation_hook(__FILE__,'opinions_unistall'); add_action ('admin_menu', 'dynamic_price_button'); //Simple product add_filter( 'woocommerce_get_price', 'change_price', PHP_INT_MAX - 100, 2 ); add_filter( 'woocommerce_get_sale_price', 'change_price', PHP_INT_MAX - 100, 2 ); add_filter( 'woocommerce_get_regular_price', 'change_price', PHP_INT_MAX - 100, 2 ); // Variations product add_filter( 'woocommerce_variation_prices_price', 'change_price', PHP_INT_MAX - 100, 2 ); add_filter( 'woocommerce_variation_prices_regular_price', 'change_price', PHP_INT_MAX - 100, 2 ); add_filter( 'woocommerce_variation_prices_sale_price', 'change_price', PHP_INT_MAX - 100, 2 ); exted(); change_price($this); function exted(){ global $my_curses; $data = file_get_contents('https://api.privatbank.ua/p24api/pubinfo?json&exchange&coursid=5'); $curses = json_decode($data, true); $my_curses = strval($curses[2]['sale']); $cached = get_transient( 'exchange' ); set_transient( 'exchange', $my_curses, 1 * HOUR_IN_SECONDS ); return $my_curses; } function change_price ($this) { // $my_curses->exted($my_curses); $int = $this; if ($GLOBALS['my_curses']!='') { return $int*$GLOBALS['my_curses']; } else return $int; }
- Тема «Плагин цены товара» закрыта для новых ответов.