Здравствуйте, уважаемые форумчане. Подскажите пожалуйста, что делаю не так. Хочу сделать, если товаров <=0, то на кнопке В КОРЗИНУ изменилось надпись на ПРЕДЗАКАЗ. Делаю так - не получается. В файле russian/php есть $_['button_cart'] = 'В корзину'; я добавил $_['button_zakaz'] = 'Предзаказ'; И в файле product.php есть $this->data['button_cart'] = $this->language->get('button_cart'); я добавил $this->data['button_cart'] = $this->language->get('button_zakaz'); и прописал условие, при котором, если товаров < или = 0, то на кнопке выводится надпись из языкового файла if ($product_info['quantity'] <= 0) { $this->data['button_cart'] = $this->language->get['button_zakaz']; } else { $this->data['button_cart'] = $this->language->get['button_cart']; } Но при количестве товаров меньше или = 0, кнопка исчезает совсем.
Возможно не исчезает, а текст пустой и получается размер кнопки 0. Обновите кеш модификатора . Да и всегда можно ведь проверить исходник в браузере, чтобы увидеть точно где кнопка.
if ($product_info['quantity'] <= 0) { $this->data['button_cart'] = $this->language->get['button_zakaz']; } else { $this->data['button_cart'] = $this->language->get['button_cart']; } Тут в get должны быть круглые скобки (), а не прямоугольные []
Попытался и для категории это применить, но увы, я так понял, что категория не видит количество товаров и, если прописать условие if ($product_info['quantity'] <= 0), то не срабатывает. Подскажете? А то в товаре ПРЕДЗАКАЗ, а в категории можно кинуть товар в корзину, минуя страницы товара.
Нужно в контроллере catalog\controller\product\category.php после 'product_id' => $result['product_id'], Добавить 'quantity' => $result['quantity'], Ещё добавляете $this->data['button_zakaz'] = $this->language->get('button_zakaz'); В шаблоне отображения catalog\view\theme\default\template\product\category.tpl (если у вас кастомная тема, то в ней нужно править) Заменяете строку <input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /> Строкой <input type="button" value="<?php echo ($product['quantity'] <= 0 ? $button_zakaz : $button_cart); ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" />
Добрый день. В category.tpl (теме не default) у меня такая строка <div class="cart"><a onclick="addToCart('<?php echo $product['product_id']; ?>');" title="<?php echo $button_cart; ?>" class="button"><span><?php echo $button_cart; ?></span></a></div>
Попробуйте так. HTML: <div class="cart"> <a onclick="addToCart('<?php echo $product['product_id']; ?>');" title="<?php echo ($product['quantity'] <= 0 ? $button_zakaz : $button_cart); ?>" class="button"> <span><?php echo ($product['quantity'] <= 0 ? $button_zakaz : $button_cart); ?></span> </a> </div>