отображение всего кода скидки на странице товара opencart 2 - PullRequest
0 голосов
/ 02 июля 2019

Я хочу отобразить все свои предложения скидок на странице продукта, всего у меня есть 5 предложений в конце

Вот код

    <?php foreach ($discounts as $discount) { ?>
    <?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?><br />
    <?php } ?

Но в результате первое предложениеигнорируется, его значение начинается со 2-го значения

price from second

, а выход массива равен

 Array ( [0] => Array ( [quantity] => 40 [price] => $5.00 ) [1] => Array ( [quantity] => 160 [price] => $4.00 ) [2] => Array ( [quantity] => 320 [price] => $3.90 ) [3] => Array ( [quantity] => 480 [price] => $3.50 ) ) 

и задним числомнастройка для предложений

offers

. Есть ли способ показать все предложения?

Ответы [ 2 ]

1 голос
/ 02 июля 2019

Изменить здесь

public function getProductDiscounts($product_id) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_discount WHERE product_id = '" . (int)$product_id . "' AND customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND quantity >= 0 AND ((date_start = '0000-00-00' OR date_start < NOW()) AND (date_end = '0000-00-00' OR date_end > NOW())) ORDER BY quantity ASC, priority ASC, price ASC");

return $query->rows;

}

Пожалуйста, измените AND quantity > 1 на AND quantity >= 0

1 голос
/ 02 июля 2019

Попробуйте выполнить следующее:

<html>
<head></head>
<body>

<-- Other html code -->

<?php
   foreach($discounts as $discount) {
       echo $discount['quantity'] . ' or more '. $discount['price'] .'<br>';   
   }
?>

<-- Other html code -->

</body>
</html>
...