Помогите с записью проверки
Подскажите, как записать такую проверку.
Ситуация. С помощью дополнения msAddLinked реализован вывод товара и подчиненных товаров на страницу оформления заказа
С помощью сниппета вытаскиваю id подчиненных товаров, чанк этого сниппета такой:
{foreach $links as $link}
{$link.linked_id}
{/foreach}
Вопрос. Как записать следующее условие
Если {$link.linked_id} = x и {$link.linked_id} = y и {$link.linked_id} = z – то выводить «картинку 1», Если link.linked_id} = x и {$link.linked_id} = с и {$link.linked_id} = b – то «выводить картинку 2» и.т.д. (у меня ограниченное количество комбинаций)
Ситуация. С помощью дополнения msAddLinked реализован вывод товара и подчиненных товаров на страницу оформления заказа
С помощью сниппета вытаскиваю id подчиненных товаров, чанк этого сниппета такой:
{foreach $links as $link}
{$link.linked_id}
{/foreach}
Вопрос. Как записать следующее условие
Если {$link.linked_id} = x и {$link.linked_id} = y и {$link.linked_id} = z – то выводить «картинку 1», Если link.linked_id} = x и {$link.linked_id} = с и {$link.linked_id} = b – то «выводить картинку 2» и.т.д. (у меня ограниченное количество комбинаций)
Комментарии: 3
Можно так попробовать:
{var $foo= ["x","y","z"]}
{var $bar = ["a","b","c"]}
{foreach $links as $link}
{if $link.linked_id in list $foo}
картинка 1
{elseif $link.linked_id in list $bar}
картинка 2
{/if}
{/foreach}
Андрей, большое спасибо за ответ. К сожалению, не срабатывает, как надо.
Если я выбираю x,y,z — то три раза выведет картинка 1, если скажем x, b, с то выведет картинка 1 и два раза картинка 2, если a,b,c -то три раза картинка 2, а мне нужно проверить комбинацию (если x иy и z то вывести картинку 1
Если я выбираю x,y,z — то три раза выведет картинка 1, если скажем x, b, с то выведет картинка 1 и два раза картинка 2, если a,b,c -то три раза картинка 2, а мне нужно проверить комбинацию (если x иy и z то вывести картинку 1
{foreach $links as $link}
{if $link.linked_id == x && $link.linked_id == y && $link.linked_id == z}
картинка 1
{elseif $link.linked_id == a && $link.linked_id == b && $link.linked_id == c}
картинка 2
{/if}
{/foreach}
для таких вещей используются логические операторы$a || $b — логичесое ИЛИ, TRUE если или $a, или $b TRUE.
$a && $b — лигическое И, TRUE если и $a, и $b TRUE.
!$a — отрицание, TRUE если $a не TRUE.
$a or $b — логическое ИЛИ, TRUE если или $a, или $b TRUE.
$a and $b — логическое И, TRUE если и $a, и $b TRUE.
$a xor $b — исключающее или, TRUE если $a, или $b TRUE, но не оба.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.