Come aggiungere opzioni di prodotto nella pagina delle categorie in opencart 2.0

Voglio aggiungere opzioni di prodotto nella pagina della categoria in opencart 2.0.

Ho aggiunto questo codice in \ catalog \ model \ catalog \ product.php

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

e poi in \ controller \ product \ category.php

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

così ora nella categoria $ this-> data ['products'] [] diventa qualcosa del genere-

 $this->data['products'][] = arrays( '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']) ); 

Ora non ho capito come call questo nella mia vista cioè, in collection.tpl

Per favore aiutami a visualizzare questo a mio avviso, per mostrare le opzioni del prodotto nella pagina delle categorie.

Ho passato ore a farlo, ma l'ho fatto funzionare. Ora, avevo solo bisogno della SELECT in modo da andare e modificato per le vostre esigenze in category.tpl sto usando la versione 2.1.0.2

1- Vai a /catalog/controller/product/category.php Quindi >> Trova l'arrays del prodotto

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

2- Aggiungi questo codice sopra l'arrays

 foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { foreach ($option['product_option_value'] as $option_value) { $product_option_value_data[] = arrays( '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[] = arrays( '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- aggiungi questo codice all'interno dell'arrays dei prodotti

 'option' => $option_data 

4- Vai a / catalog / view / theme / YOUR TEMPLATE / template / product / category.tpl e aggiungi questo codice al tuo ciclo di prodotto

  <?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 } ?> 

Sto ancora lavorando in javascript, così posso aggiungere il prodotto al carrello con quantità e opzioni senza entrare nella pagina del prodotto. Grazie