@animr

Как вывести результат функции в шаблоне tpl (MVC)?

Люди добрые подскажите, как в шаблоне tpl файла opencart вывести результат функции из контроллера:

Модель:
public function getColorProduct($sku) {		
		$sql = "SELECT * FROM " . DB_PREFIX . "product GROUP BY sku = '{$sku}'";				
				
		$ColorProduct = array();
		$query = $this->db->query($sql);
		foreach ($query->rows as $result) {
			$ColorProduct[$result['product_id']] = $this->getProduct($result['product_id']);
		}
		return $ColorProduct;		
	}


Представление: тут выдает ошибку Notice: Undefined variable: Color_Sku in .../product/preview/horizontal.tpl on line 78
/*вот 78 строка*/ <?php if ($Color_Sku ) { ?> 
    <?Php foreach ($Color_Sku as $ColorSku) { ?>			
	     <div class="color_div_sku_id">	
		     <?Php echo $ColorSku['sku']; ?>	
	     </div>			
    <?Php } ?> 
 <?Php } else { ?> 
       <div class="color_div_sku_id">
	      <p>No!</p>
       </div>
<?Php } ?>


Контроллер:
$Color_Sku = $this->model_catalog_product->getColorProduct($data['sku']);		
var_dump($Color_Sku); //Массив заполнен
  • Вопрос задан
  • 322 просмотра
Решения вопроса 1
zoozag
@zoozag
Opencart
Обычно данные из конроллера в вью передаются через $this->data в Opencart 1.5 и $data в Opencart > 2.0

1.5
$this->data['Color_Sku'] = $this->model_catalog_product->getColorProduct($data['sku']);

2.0
$data['Color_Sku'] = $this->model_catalog_product->getColorProduct($data['sku']);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы