Доброго всем вечера/дня. Возник вопрос/задача: Хочу прописать вывод DIV в зависимости от цены товара на странице товара. Сделал так: <?php if ( $price > '5000' ) { ?> <div class="custom-tab"> ........................... </div> <?php } else { ?> <?php } ?> Получилась такая картина на сайте: У товаров с ценой ниже 5000 - блока нет (ПРАВИЛЬНО) У товаров с ценой от 5000 до 10000 - блок есть (ПРАВИЛЬНО) У товаров с ценой более 10000 - блока нет (НЕ ПРАВИЛЬНО) Как так получается? Как правильно прописывать такие условия? Попробовал прописать условие <?php if ( $price > '10000' ) { ?> - блок появился у всех товаров вообще.
Вы строку сравниваете со строкой, потому как цена это строка (вместе с валютой) Для того, чтобы цена была числом, в файле catalog/controller/product/product.php найдите (для OC 1.5) PHP: $this->data['price'] = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax'))); добавьте строку PHP: $this->data['price_number'] = $this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')); Для OC 2.x всесто $this->data['xxx'] будет $data['xxx'] В шаблоне сравнивайте с переменной $price_number И не берите в кавычки сравниваемое число И не забудьте про $this->data['special_number'] Сделайте по аналогии