Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено]Выбор цены в товаре из первой опции


Recommended Posts

Здравствуйте!

 

ocStore 2.1.0.2

 

Описание: Товар сейчас показывает стоимость 0р., так как цены идут в опциях, хотел бы узнать, как сделать так, чтобы товар подцеплял цену из опций(из первой опции если быть точнее) и с ней тусил везде, а клиент когда захочет, может выбрать другую опцию и все типа гуд(ну это сейчас работает)

 

 

Вопрос: Как сделать так, чтобы товар брал цену из первой опции и эта цена считалась основной в товаре?

Надіслати
Поділитися на інших сайтах


Здесь как минимум нужно ещё опциям добавить значение равенства " = ", что бы отображалась полная цена, а не разница.Ну и далее уже выводить условие 

 

У товара цена ноль.Если есть опции выводим цену за  наименьшую опцию.В магазине отображаем как "Цена от ....."

Надіслати
Поділитися на інших сайтах

Это то все понятно и стоит... Если зайдя в товар и тыкнуть опцию, цена появляется, но вот везде в других местах, товар пишет что он стоит 0р. и когда нажимаешь купить, покупаешь его за 0р.

Мне надо чтобы товар подгружал цену из первой опции. Цена у опций уже стоит (= сумма)

 

Вот например:

 

Bezimyanni_3629127_23051092.png

ВНИЗУ ТИПА КАК НАДО, ЧТОБЫ БЫЛО!)

Змінено користувачем MFX
Надіслати
Поділитися на інших сайтах


Если есть навыки то сделать подобное не проблема.

Это я понял!))

 

Навык есть, только куда воткунуть не пойму, чтобы подгружалась цена из опции, ранее я делал, аналогичный пример, там все было ровно, но сайта того больше нет, а что я делал хоть убей не помню!(((

Надіслати
Поділитися на інших сайтах



$cat_product_price = 0;

foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { 

if (!is_array($option['product_option_value'])) continue;

foreach ($option['product_option_value'] as $product_option_value) { 

if (!(float)$cat_product_price || $product_option_value['price'] < $cat_product_price) $cat_product_price = $product_option_value['price'];

}

}

$price = '<span class="from">' .$this->language->get('text_from') . '</span> '.$this->currency->format($this->tax->calculate($cat_product_price, $result['tax_class_id'], $this->config->get('config_tax')));

if (!(float)$cat_product_price) {

$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));

}

  • +1 1
Надіслати
Поділитися на інших сайтах

$cat_product_price = 0;
foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { 
if (!is_array($option['product_option_value'])) continue;
foreach ($option['product_option_value'] as $product_option_value) { 
if (!(float)$cat_product_price || $product_option_value['price'] < $cat_product_price) $cat_product_price = $product_option_value['price'];
}
}
$price = '<span class="from">' .$this->language->get('text_from') . '</span> '.$this->currency->format($this->tax->calculate($cat_product_price, $result['tax_class_id'], $this->config->get('config_tax')));


if (!(float)$cat_product_price) {
$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
}

 

.сдаюсь, не понял куда именно воткнуть... Можешь подробнее написать?)

Надіслати
Поділитися на інших сайтах


Так это уже будет "Сделай за меня".

Я имею ввиду среди опций в product.tpl закинуть или в другое место, если в product.tpl то на других страницах(таких как витрина магазина), он же не будет отображаться с ценой из опций, или я чего не понимаю!?

Надіслати
Поділитися на інших сайтах


Это для контроллера категории.С модулями по аналогии.

тплки можно вообще не трогать.

  • +1 1
Надіслати
Поділитися на інших сайтах

Читаем сообщение #8.

 

дам подсказку - $price

 

Правильно вставляю!?

$product_total = $this->model_catalog_product->getTotalProducts($filter_data);

			$results = $this->model_catalog_product->getProducts($filter_data);
            $cat_product_price = 0;
            foreach ($this->model_catalog_product->getProductOptions($result['product_id']) as $option) { 
                if (!is_array($option['product_option_value'])) continue;
            foreach ($option['product_option_value'] as $product_option_value) { 
                if (!(float)$cat_product_price || $product_option_value['price'] < $cat_product_price) $cat_product_price = $product_option_value['price'];
            }
            }
                    $price = '<span class="from">' .$this->language->get('text_from') . '</span> '.$this->currency->format($this->tax->calculate($cat_product_price, $result['tax_class_id'], $this->config->get('config_tax')));


                if (!(float)$cat_product_price) {
                    $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
                }
			foreach ($results as $result) {
				if ($result['image']) {
					$image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height'));
				} else {
					$image = $this->model_tool_image->resize('placeholder.png', $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height'));
				}

				if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
					$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
				} else {
					$price = false;
				}

				if ((float)$result['special']) {
					$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')));
				} else {
					$special = false;
				}
				

Или нет!?

 

Потому что ничего вообще не происходит... Я туплю...(

Надіслати
Поділитися на інших сайтах


Заменить.И это кстати видно в моём сообщении.Тем более

 

......Навык есть,

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Заменить.И это кстати видно в моём сообщении.Тем более

У меня мозг будто вытащили, прям туплю жесть, при этом ни о чем думать не могу, просто не получается думать!!!!)

Надіслати
Поділитися на інших сайтах


Гість
Ця тема закрита для публікації повідомлень.
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.