Тема: Вывод цвета блоком

Здравствуйте. Как получить значение цвета (hex) возле значения характеристики (тип: список цветов) в карточке товара, если это не комплектация, а единичный товар. Т.е в списке характеристик чтобы было например не "Красный" а блок с заливкой соответствующего цвета, заданного этому значению?

 {foreach $product->fillProperty() as $data}
                                {if !$data.group.hidden}
                                    <tr class="character-title_line">
                                        <td colspan="2" class="tab-content_table_character-title">{$data.group.title|default:"Общие"}</td>
                                    </tr>
                                    {foreach $data.properties as $property}
                                        {$prop_value = $property->textView()}
                                        {if !$property.hidden && $prop_value != ''}
                                            <tr class="tab-content_table_character-text">
                                                <td><span>{$property.title} {if $property.unit}({$property.unit}){/if}</span></td>
                                                <td><span>{$prop_value} <span class="color_prop" title="{$prop_value}" style="background-color: цвет"></span></td>
                                            </tr>
                                        {/if}
                                    {/foreach}
                                {/if}
                            {/foreach}

Повысить оценку Понизить оценку

2

Re: Вывод цвета блоком

Получилось вывести блоки цветов,

{foreach $data.properties as $property}
                                        {$prop_value = $property->textView()}
                                        {if !$property.hidden && $prop_value != ''}
                                            <tr class="tab-content_table_character-text">
                                                <td><span>{$property.title}{if $property.unit}({$property.unit}){/if}</span></td>
                                                <td><span>{$prop_value} 
                                                        <span class="color-item">    
                                                            {foreach $property->getAllowedValuesObjects() as $key => $item_value}
                                                                <div title="{$item_value.value}" style="background-color:{$item_value.color}"></div>
                                                            {/foreach}
                                                        </span>
                                                    </span>
                                                </td>
                                            </tr>
                                        {/if}
                                    {/foreach}

но вывелись ВСЕ ЗНАЧЕНИЯ данной характеристики (все цвета)
Как при этом отфильтровать только цвет который соответствует значению $prop_value?

Повысить оценку Понизить оценку

3 Отредактировано Закусило Александр (04.12.2017 17:37:57)

Re: Вывод цвета блоком

{foreach $data.properties as $property}
                                        {$prop_value = $property->textView()}
                                        {if !$property.hidden && $prop_value != ''}
                                            <tr class="tab-content_table_character-text">
                                                <td><span>{$property.title}{if $property.unit}({$property.unit}){/if}</span></td>
                                                <td><span>{$prop_value} 
                                                        <span class="color-item">    
                                                            {foreach $property->getAllowedValuesObjects() as $key => $item_value}
                                                                {if $item_value.value == $prop_value}  
                                                                    <div title="{$item_value.value}" style="background-color:{$item_value.color}"></div>
                                                                {/if}  
                                                            {/foreach}
                                                        </span>
                                                    </span>
                                                </td>
                                            </tr>
                                        {/if}
                                    {/foreach}

4

Re: Вывод цвета блоком

Спасибо большое Александр.
Так же пробовала, только одного равно не хватило
{if $item_value.value == $prop_value} в этом условии...
Ещё раз спасибо.

Повысить оценку Понизить оценку

Re: Вывод цвета блоком

Не за что.