Применять CSS только для десятичных знаков для Woocmmerce - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь найти функцию, которая заставит десятичные позиции в ценах Woocommerce иметь свой собственный класс CSS, поэтому я могу применить стиль, отличный от того, который используется для недесятичной части цены. У меня многоязычный и мультивалютный сайт.

Я нашел код, который делает то, что я ищу, но он был закодирован таким образом, чтобы заменить символ валюты на бразильский символ, и, поскольку я не знаю, как самому кодировать, я не смог изменить код для применения к моим потребностям.

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 18 мая 2019

Вам необходимо использовать formatted_woocommerce_price фильтр. Проверьте пример кода. Вы можете изменить sub на любой элемент HTML, который вы хотите, с вашим конкретным классом.

add_filter( 'formatted_woocommerce_price', 'style_decimal_price', 10, 5 );
function style_decimal_price( $formatted_price, $price, $decimal_places, $decimal_separator, $thousand_separator ) {

    $unit    = number_format( intval( $price ), 0, $decimal_separator, $thousand_separator );
    $decimal = sprintf( '%02d', ( $price - intval( $price ) ) * 100 );

    return $unit . '<sub class="custom-decimal">' . $decimal_separator. $decimal . '</sub>';
}
0 голосов
/ 17 мая 2019

Добавьте <span> к десятичным знакам и создайте класс только для них:

HTML:

<div name="price">
    &#36; 99.<span class="decimals">99<span>
</div>

CSS:

.decimals {
    /* The style you want for the decimals goes here */
}
...