Если мы посмотрим штатный вывод товаров в категориях (списках товаров), а именно вывод skus товара
{if !empty($p.skus) && !empty($p.skus[$p.sku_id])}
{$sku = $p.skus[$p.sku_id]}
{if empty($sku.available) && (count($p.skus) === 1)}{$available = false}{/if}
{/if}
то такая конструкция сработает только в категориях.
Если товар выводится в списке товаров, то об
$p.skus
там ничего не известно, вернет null
Добавление строки
{$skus = $wa->shop->skus(array_keys($products))}
решает проблему частично, потому что получить информацию об артикуле по умолчанию это костыль на костыле, приходится городить такие конструкции, кому это надо?
...
{if !empty($skus[$p.id])}
{foreach $skus[$p.id] as $temp_sku}
{if $temp_sku['id'] == $p.sku_id}
{$sku = $t_sku}
{break}
{/if}
{/foreach}
{/if}
...
Почему нельзя все привести к единому виду? Почему постоянно приходится придумывать какие-то обходные пути для получения очевидной и базовой информации о товаре?
Считайте это продолжение этой темы
0 комментариев