Вывод только заполненных опций товара
здравствуйте,
Я пытаюсь вывести опции товара сниппетом msproductoptions чанк вывода:
Разобрался:
$option.value -массив и нужно проверять на NULL первый элемент массива:
Я пытаюсь вывести опции товара сниппетом msproductoptions чанк вывода:
{foreach $options as $option}
{if $option.value !== ''}
{if $option.id != 15}
<div class="card-table-line">
<div class="table-left-side-ab">{$option.caption}</div>
<div class="table-right-side-ab">
{if $option.value is array}
{$option.value | join : ', '} {$option.measure_unit}
{else}
{$option.value} {$option.measure_unit}
{/if}</div>
</div>
{/if}
{/if}
{/foreach}
Раньше все работало, после переноса товаров в другую категорию и присвоения заново опций категориям все пустые опции выдают не строковое "" а NULL и следовательно выводит незаполненные опцией потому-что null <> string причем поймать этот NULL ничем не получается. Пробовал разные варианты:{$option.value is not NULL} //true а {var_dump($option.value)} - NULL
{is_isset($option.value)} //false а {var_dump($option.value)} - NULL
{$option.value is empty} //false а {var_dump($option.value)} - NULL
{$option.value is set} //true а {var_dump($option.value)} - NULL
UPDРазобрался:
$option.value -массив и нужно проверять на NULL первый элемент массива:
{$option.value[0] is not NULL} //false