//Получаем значения, которые вводит пользователь в отдельной функции
function prime_value_kurs() {
$kurs = get_option( 'woocommerce_set_kurs', 1 );
return $kurs;
}
// Типы товара simple, grouped and external
add_filter('woocommerce_product_get_price', 'prime_change_rprice', 99, 2 );
add_filter('woocommerce_product_get_regular_price', 'prime_change_rprice', 99, 2 );
// Тип товара Variations
add_filter('woocommerce_product_variation_get_regular_price', 'prime_change_rprice', 99, 2 );
add_filter('woocommerce_product_variation_get_price', 'prime_change_rprice', 99, 2 );
//Производим пересчет значения
function prime_change_rprice($price,$product) {
$price = (int)$price * prime_value_kurs();
if ($price == 0) {
echo $price='';
return $price;
}
else {
return $price;
}
}
/** Добавляем в админку поле для настройки курса **/
add_filter( 'woocommerce_general_settings', 'add_a_setting_kurs' );
function add_a_setting_kurs( $settings ) {
$updated_settings = array();
foreach ( $settings as $section ) {
if ( isset( $section['id'] ) && 'pricing_options' == $section['id'] &&
isset( $section['type'] ) && 'sectionend' == $section['type'] ) {
$updated_settings[] = array(
'title' => 'Курс валюты',
'desc' => 'Курс валюты учета по отношению к валюте, которая отображается посетителю',
'id' => 'woocommerce_set_kurs',
'type' => 'text',
'css' => 'width:70px;',
'default' => '1',
'desc_tip' => false,
);
}
$updated_settings[] = $section;
}
return $updated_settings;
}