開いているカートを使用してサイトで作業しており、各オプションを調整済みの価格で表示したいと考えています。
コントローラーでは、すべてのオプションを取得し、それらをループして、最終結果の単純な追加/フォーマットを行っています。ただし、機能していないだけで、その理由はまったくわかりません。テンプレートにレンダリングするときの価格は、結果の価格 + 123 を示しません。
私のコードは次のとおりです。
$options = $this->model_catalog_product->getProductOptions($result['product_id']);
foreach ($options as $option) {
foreach($option['option_value'] as $option_value) {
$option_value['price'] = $result['price'] = $option_value['price'];
}
}
$this->data['products'][] = array(
'options' => $options,
'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)
);