Добрые люди, помогите, чем можете
В карточке товара рядом с названием у меня есть кнопка "Подобрать аналог"
<h1 itemprop="name">
<?php echo $heading_title;?>
<?php foreach ($catprod as $catp) { ?>
<a href="<?php if(end($catprod)===$catp) { foreach ($attribute_groups as $attribute_group) { foreach ($attribute_group['attribute'] as $attribute) { if (in_array($attribute['attribute_id'], array(1949))) { echo $catp['href1']; } elseif (in_array($attribute['attribute_id'], array(1948))) { echo $catp['href2']; } elseif (in_array($attribute['attribute_id'], array(1950))) { echo $catp['href4']; } elseif (in_array($attribute['attribute_id'], array(1949,1948))) { echo $catp['href3']; } elseif ((in_array($attribute['attribute_id'], array(1949))) && (in_array($attribute['attribute_id'], array(1948))) && (in_array($attribute['attribute_id'], array(1950)))) { echo $catp['href5']; } } } } ?>" target="_blank"
<?php if(end($catprod)===$catp) { ?> class="btn btn-danger" style="margin-left: 10px; margin-bottom: 5px;"
<?php } ?>><?php if(end($catprod)===$catp) { echo $catp['name']; } } ?></a></h1>
<?php //echo $catp['href']; ?>
Вкратце, у меня есть перебор хлебных крошек $catprod и есть перебор атрибутов.
По хлебным крошкам мне нужно брать только последнюю категорию куда входит товар, я отрезаю все остальных элементы вот таким условием, последнюю категорию я записываю в $catp['href'] -
if(end($catprod)===$catp)
Дальше, я в этом условии перебираю все атрибуты, мне нужно выделить 3 ключевых атрибута 1948,1949,1950
И в зависимости от атрибута через кнопку я должен переходить на сформированные уже ссылки. Если в товаре только 1948 атрибут, то одна ссылка href1, если 1948 и 1949 то уже другая href2 и т.д. Конкретно, то что сейчас написано работает, только с одиночными атрибутами, а если атрибутов нет, то я у меня переходит на главную страницу, т.к я не могу придумать условия, когда атрибутов, которые мне нужны нету, ну и с двойными атрибутами то у меня в адресной строке появляются две ссылки href1href2, эту задачу можно решить по разному, но всё тут будет крутить между хлебными крошками и атрибутами, как мне отловить условие, когда нету 1948,1949,1950 атрибутов?
Так не работает
!(in_array($attribute['attribute_id'], array(1949,1950,1948)))
И так тоже
!((in_array($attribute['attribute_id'], array(1949)))&&(in_array($attribute['attribute_id'], array(1948)))&&(in_array($attribute['attribute_id'], array(1950))))