@Ekaterina002

Как определенному свойству товара задать css класс?

Есть свойство товара с символьным кодом "PROP_INCOME" и для него необходимо задать определенный css-стиль, например - font-weight: 600;
Как это сделать?
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
@Firsov36
full-stack web developer
`$value = value.style.font-weight == '600';` - что за язык программирования ?! :) Это некоторый микс из php+javascript(хотя написание тогда не верное)? ... так и не выйдет.

Вам надо в коде шаблона компоненты найти кусок кода, где выводятся свойства товара. И там уже проверять/искать искомое свойство, а когда найдете, то подставлять или инлайн стиль font-weight или еще лучше класс стиля. сам класс стиля не забыть добавить в style.css

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

<?php
foreach ($arResult['PROPERTIES'] as $code => $value) {
    if (in_array ($code, ELEMENT_PROPERTIES_SKIP) || empty($value['VALUE']))
    {
        continue;
    }                
    
    $class = $style = '';
    if ($code == 'PROP_INCOME') {
        $class = 'fb-600';
        $style = 'style="font-weight: 600;"';
    }
    ?>
        <div class="catalog-property <?=$class?>">
            <?=$value?>
        </div>

        or

        <div <?=($style??'')?>>
            <?=$value?>
        </div>
    <?php
} 
?>


Класс/стиль для свойства можно (а иногда и нужно) подготавливать не в шаблоне, а в файле result_modifier.php чтобы в шаблоне было как можно меньше логики, только вывод. В зависимости от кастомизированного компонента или стандартного битриксовского могут быть некоторые изменения, также до компонента и шаблона ваши свойства должны "доходить", что может потребуется настройки инфоблока/компонента посмотреть.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы