Как добавить параметры продукта на странице категории в opencart 2.0

Я хочу добавить параметры продукта на странице категории в opencart 2.0.

Я добавил этот код в каталог \ catalog \ model \ catalog \ product.php

public function hasOptionPriceIncrease($product_id) { $option_data = $this->getProductOptions($product_id); if (is_array($product_option_value)) { foreach ($product_option_value as $option) { if (is_array($option['product_option_value'])) { foreach ($option['product_option_value'] as $value) { if ($value['price'] > 1) { return true; } } } } return false } 

а затем в \ controller \ product \ category.php

 'has_option_price_increase' =>$this->model_catalog_product->hasOptionPriceIncrease($result['product_id']) 

поэтому теперь в категории $ this-> data ['products'] [] становится чем-то вроде этого –

 $this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url), 'has_option_price_increase' =>$this->model_catalog_product->hasOptionPriceIncrease($result['product_id']) ); 

Теперь я не понял, как назвать это по-моему, т.е. в collection.tpl

Пожалуйста, помогите мне отобразить это на мой взгляд, чтобы показать параметры продукта на странице категории.

Я потратил несколько часов на это, но у меня все получилось. Теперь мне нужен только SELECT, поэтому вы идете и модифицировали его в соответствии с вашими потребностями в category.tpl. Я использую версию 2.1.0.2

1- Перейдите в /catalog/controller/product/category.php Затем >> Найдите массив продукта

 $data['products'][] = array( 'product_id' => $result['product_id'], 

2- Добавьте этот код над массивом

 foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { foreach ($option['product_option_value'] as $option_value) { $product_option_value_data[] = array( 'product_option_value_id' => $option_value['product_option_value_id'], 'option_value_id' => $option_value['option_value_id'], 'name' => $option_value['name'], 'image' => $this->model_tool_image->resize($option_value['image'], 50, 50), 'price' => $price, 'price_prefix' => $option_value['price_prefix'] ); } $option_data[] = array( 'product_option_id' => $option['product_option_id'], 'product_option_value' => $product_option_value_data, 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'value' => $option['value'], 'required' => $option['required'] ); } 

3- добавьте этот код внутри массива продуктов

 'option' => $option_data 

4- Перейдите к / catalog / view / theme / YOUR TEMPLATE / template / product / category.tpl и добавьте этот код в цикл продукта

  <?php foreach ($product['option'] as $option) { ?> <?php if ($option['type'] == 'select') { ?> <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"> <option value="">SELECT EXTENDED LENGTH</option> <?php foreach ($option['product_option_value'] as $option_value) { ?> <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </option> <?php } ?> </select> <?php } ?> <?php } ?> 

Я все еще работаю в javascript, поэтому я могу добавить товар в корзину с количеством и вариантами, не заходя на страницу продукта. благодаря