При разработке интернет магазина на woocommerce, возникла задача изменить размер значков валюты, изначально они были такого же размера как и сама цена, это смотрелось очень массивно.

Так как для значков не установлен класс, чтоб можно было стилями изменить, пришлось дописать небольшой хук, при его использовании отпадает необходимость использовать плагин Saphali Woocommerce Russian, тем более он больше не поддерживает русскую локализацию.

valut

 

Так как для значков не установлен класс, чтоб можно было стилями изменить, пришлось дописать небольшой хук, при его использовании отпадает необходимость использовать плагин Saphali Woocommerce Russian, тем более он больше не поддерживает русскую локализацию.

Для того чтоб нам поменять значки валюты или изменить их размер, цвет и так далее.
Откройте файл functions.php и вставьте туда этот код:

  add_filter( 'woocommerce_currencies', 'add_inr_currency' );
add_filter( 'woocommerce_currency_symbol', 'add_inr_currency_symbol' );

function add_inr_currency( $currencies ) {
   $currencies['UAH'] = __( 'Украинская гривна', 'themewoocommerce' );
		$currencies['RUR'] = __( 'Российский рубль', 'themewoocommerce' );
		$currencies['RUB'] = __( 'Российский рубль (P)', 'themewoocommerce' );
		$currencies['BYR'] = __( 'Belarusian ruble', 'themewoocommerce' );
		$currencies['AMD'] = __( 'Armenian dram  (Դրամ)', 'themewoocommerce' );
		$currencies['KGS'] = __( 'Киргизский сом', 'themewoocommerce' );
		$currencies['KZT'] = __( 'Казахстанский тенге ', 'themewoocommerce' );
		$currencies['UZS'] = __( 'Узбекский сум', 'themewoocommerce' );
		$currencies['LTL'] = __( 'Lithuanian Litas', 'themewoocommerce' );
    return $currencies;
}

function add_inr_currency_symbol( $symbol ) {
	$currency = get_option( 'woocommerce_currency' );
	switch( $currency ) {
						case 'UAH': $symbol = '<span class=rure >&#x433;&#x440;&#x43D;.</span>'; break;
				case 'RUB': $symbol = '<span class=rure >&#x440;<span>&#x443;&#x431;.</span></span>'; break;
				case 'RUR': $symbol = '<span class=rure >&#x440;&#x443;&#x431;.</span>'; break;
				case 'BYR': $symbol = '<span class=rure >&#x440;&#x443;&#x431;.</span>'; break;
				case 'AMD': $symbol = '<span class=rure >&#x534;</span>'; break;
				case 'KGS': $symbol = '<span class=rure >сом</span>'; break;
				case 'KZT': $symbol = '<span class=rure >&#x20B8;</span>'; break;
				case 'UZS': $symbol = '<span class=rure >&#x441;&#x45E;&#x43C;</span>'; break;
				case 'LTL': $symbol = '<span class=rure >lt.</span>'; break;

	}
	return $symbol;
}

После этого ваши значки будут обернуты в класс (rure) и теперь вы можете изменить стили.

Источник: wp-city.ru

 

Добавить комментарий


Защитный код
Обновить