Перейти к содержимому


Фото
- - - - -

Минимальная цена товара


  • Чтобы отвечать, сперва войдите на форум
9 ответов в теме

#1 Gruzin

Gruzin
  • Пользователь
  • 107 сообщений
  • Верстка, Пользователь
  • Версия CMS:2.x
  • Откуда:Минск

Опубликовано 13.07.2017 - 19:20

Всем привет, как у товара в блоке рекомендуемые если есть разные варианты с разной ценой, вывести минимальную цену, что бы была возможность написать цена от.... ну и т.д. Надеюсь объяснил доходчиво. Спасибо.



#2 ps-simpla

ps-simpla

    Модератор в запасе :)

  • Фрилансер
  • 970 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Пермский край

Опубликовано 13.07.2017 - 20:06

{$price_min = $product->variant->price}
{$price_max = $product->variant->price}
{foreach $product->variants as $v}
	{if $price_min > $v->price && $v->price != 0}{$price_min = $v->price}{/if}
	{if $price_max < $v->price && $v->price != 0}{$price_max = $v->price}{/if}
{/foreach}
<div class="price">от <span>{$price_min|convert} {$currency->sign|escape}</span> до <span>{$price_max|convert} {$currency->sign|escape} </span></div>	


#3 koteyka

koteyka

    Фрилансер

  • Пользователь
  • 1 305 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Днепропетровск

Опубликовано 13.07.2017 - 20:09

{min($product->variants, $product->variant->price)}


#4 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 5 467 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 13.07.2017 - 20:11


{min($product->variants, $product->variant->price)}


^_^

#5 koteyka

koteyka

    Фрилансер

  • Пользователь
  • 1 305 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Днепропетровск

Опубликовано 13.07.2017 - 20:12

{$price_min = $product->variant->price}

А какой вариант, если фореч идет уже после?

Ой, сори, там же задается $product->variant в PHP



^_^

А что, не сработает?

Сейчас проверим.


Изменено: koteyka, 13.07.2017 - 20:22


#6 Gruzin

Gruzin
  • Пользователь
  • 107 сообщений
  • Верстка, Пользователь
  • Версия CMS:2.x
  • Откуда:Минск

Опубликовано 13.07.2017 - 20:14

{$price_min = $product->variant->price}
{$price_max = $product->variant->price}
{foreach $product->variants as $v}
	{if $price_min > $v->price && $v->price != 0}{$price_min = $v->price}{/if}
	{if $price_max < $v->price && $v->price != 0}{$price_max = $v->price}{/if}
{/foreach}
<div class="price">от <span>{$price_min|convert} {$currency->sign|escape}</span> до <span>{$price_max|convert} {$currency->sign|escape} </span></div>	

Круто. Большое спасибо.



#7 koteyka

koteyka

    Фрилансер

  • Пользователь
  • 1 305 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Днепропетровск

Опубликовано 13.07.2017 - 20:15

Вот сам $product->variants
Array
(
[93] => stdClass Object
(
[id] => 93
[product_id] => 45
[price] => 20.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => Нет
[attachment] =>
[position] => 93
[nabor_id] => 4
)

[94] => stdClass Object
(
[id] => 94
[product_id] => 45
[price] => 350.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => 2000
[attachment] =>
[position] => 94
[nabor_id] => 4
)

[96] => stdClass Object
(
[id] => 96
[product_id] => 45
[price] => 500.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => 2200
[attachment] =>
[position] => 96
[nabor_id] => 4
)

[97] => stdClass Object
(
[id] => 97
[product_id] => 45
[price] => 20.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => Нет
[attachment] =>
[position] => 97
[nabor_id] => 5
)

[98] => stdClass Object
(
[id] => 98
[product_id] => 45
[price] => 100.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => 2
[attachment] =>
[position] => 98
[nabor_id] => 5
)

[99] => stdClass Object
(
[id] => 99
[product_id] => 45
[price] => 200.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => 3
[attachment] =>
[position] => 99
[nabor_id] => 5
)

[100] => stdClass Object
(
[id] => 100
[product_id] => 45
[price] => 300.00
[compare_price] =>
[sku] =>
[stock] => 50
[infinity] => 1
[name] => 4
[attachment] =>
[position] => 100
[nabor_id] => 5
)

)

 

Вот, что выводит MIN = {min($product->variants, $product->variant->price)}

MIN = 20.00



#8 Gruzin

Gruzin
  • Пользователь
  • 107 сообщений
  • Верстка, Пользователь
  • Версия CMS:2.x
  • Откуда:Минск

Опубликовано 13.07.2017 - 20:18

{min($product->variants, $product->variant->price)}

Спасибо за желание помочь но ваш вариант не работает как надо. Или может я не туда вписываю эту строчку, во вариант http://forum.simplac...товара/?p=98949 заработал сразу без проблем.


Изменено: Gruzin, 13.07.2017 - 20:21


#9 koteyka

koteyka

    Фрилансер

  • Пользователь
  • 1 305 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Днепропетровск

Опубликовано 13.07.2017 - 20:25

Или может я не туда вписываю эту строчку, во вариант http://forum.simplac...товара/?p=98949 заработал сразу без проблем

Та без проблем.

Второй вариант более грамотно расписан. Я просто ответил на вопрос

если есть разные варианты с разной ценой, вывести минимальную цену


Изменено: koteyka, 13.07.2017 - 20:26


#10 koteyka

koteyka

    Фрилансер

  • Пользователь
  • 1 305 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Днепропетровск

Опубликовано 13.07.2017 - 20:27

 -


Изменено: koteyka, 13.07.2017 - 20:29





0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых