Тематика: По цвету: Красный Желтый Зеленый Синий Оранжевый Розовый Серый Белый Черный Мульти

Ваш сайт на CMS Joomla? Добавьте его в галерею Joomfans!

Вы можете совершенно бесплатно добавить ваш веб-сайт в нашу галерею сайтов. Подробнее...

Галерея Добавить

ТЕМА: virtuemart 2 отображение цен, как сделать?

Re: virtuemart 2 отображение цен, как сделать? 9 года, 2 мес. назад #3256

По умолчанию если использовать первый вариант (НДС с нулевой ставкой), то в категории отображаются цены уже со скидками. Пример ниже, товар стоимостью 58490р, указан уже с учетом скидки:
virt_disc.jpg


В настройке товара указана полная стоимость и стоимость с учетом скидки:
product_price.jpg


При желании, вы можете изменить или добавить какую либо информацию. Например указать новую цену и старую цену зачеркнутую. Для этого перейдите к файлу templates/gk_storebox/html/com_virtuemart/category/default.php, далее перейдите к 195 строке и замените это:

echo $this->currency->createPriceDiv('basePriceWithTax', '', $product->prices);


на это:

echo $this->currency->createPriceDiv('salesPrice', '', $product->prices);
							if (round($product->prices['basePriceWithTax'],$this->currency->_priceConfig['salesPrice'][1]) != $product->prices['salesPrice']) {
					echo '<span class="price-crossed" >' . $this->currency->createPriceDiv ('basePriceWithTax', '', $product->prices) . "</span>";
				}


На выходе получите отображение стоимости со скидкой и стоимость без скидки (зачеркнутую). См. скриншот ниже:

disc_out.jpg


Можно также немного "приукрасить" и добавить доп. информацию к отображению стоимости. Для примера я выделил новую стоимость красным цветом и добавил к уже имеющейся информации разницу в стоимости (сколько получается скидка в рублях). Для этого все также перейдите к 195 строке в файле templates/gk_storebox/html/com_virtuemart/category/default.php и замените строку:

echo $this->currency->createPriceDiv('basePriceWithTax', '', $product->prices);


на это:

if (round($product->prices['basePriceWithTax'],$this->currency->_priceConfig['salesPrice'][1]) != round($product->prices['salesPrice'],$this->currency->_priceConfig['salesPrice'][1])) {
                     
   echo $this->currency->createPriceDiv('salesPrice', '', $product->prices);

   }
   else {
      echo $this->currency->createPriceDiv('basePriceWithTax', '', $product->prices);
   }
							
   if (round($product->prices['basePriceWithTax'],$this->currency->_priceConfig['salesPrice'][1]) != $product->prices['salesPrice']) {
	echo '<span class="price-crossed" >' . $this->currency->createPriceDiv ('basePriceWithTax', '', $product->prices) . "</span>";
  }
								
 echo $this->currency->createPriceDiv ('discountAmount', 'COM_VIRTUEMART_PRODUCT_DISCOUNT_AMOUNT', $product->prices);


Для улучшения видимости товара со скидкой выделяем его красным цветом, для этого откройте CSS файл Virtuemart — templates/gk_storebox/css/vm.css и в конце файла добавьте следующий код:

div.catProductPrice div.PricesalesPrice span.PricesalesPrice  {
	color: #e5372f!important;
}


В итоге получится такая картинка:

cat_disc_fou.jpg


Как видно на скриншоте выше, в тех товарах где есть скидка, отображается:
1) Стоимость со скидкой
2) Стоимость без скидки
3) Разница в цене

А в тех товарах где скидка не предусмотрена, отображается просто обычная стоимость товара.

Данный вариант более лучше подходит, т.к. клиент отчетливо увидит новую цену на определенный товар, увидит старую цену + немаловажно увидит разницу в стоимости.

Также вы можете подписать, оформить либо дополнить отображение товаров в категории любой другой информацией. Например добавить подписи и пр. ... ...

sale_virt.jpg
  • joomfans
  • Вне сайта
  • Administrator
  • smo,seo, design
  • Постов: 516
  • Репутация: 48
Adipiscing et ridiculus velit! Mauris, pellentesque duis integer sit non. Augue ac! Dolor tincidunt in etiam mus amet!
Изменено: 9 года, 2 мес. назад от joomfans.

Re: virtuemart 2 отображение цен, как сделать? 9 года, 2 мес. назад #3257

Добрый день. Вы используете скидку путем прописывания окончательной цены в Override. А у меня она реализована через правила расчета (чтобы можно было прям целые категории делать со скидкой) Вот так:

h85c60f3.jpg


haf48542.jpg


Используя первый вариант с НДС (который самый простой) в категориях показывается только Цена с НДС но без скидки ( и то если этот флажок отметить.) а в карточке товара остается как прежде. Цена со скидкой крупная, начальная цена и размер скидки.

hd37d76e.jpg


Единственное что делается без того чтобы залазить в код - это можно при назначении цен и правил расчета выбрать в списке - изменение цен для PMargin. тогда в категориях показывается окончательная цена. Ноо в карточке товара пропадает все и остается только окончательная цена.

конечно мне очень нравиться как реализована идея с зачеркнутой ценой и указанием размера скидки. Я бы себе так сделал с радостью. но прописывать в каждый товар скидку через Override - это очень долго. К тому же у меня цена меняется при выборе размера (реализовано через настраиваемые поля), а при скидке через Override-цена останется одна, не измена при выборе размера.
Спасибо большое за подробные ответы.
  • freakjr
  • Вне сайта
  • Junior Boarder
  • Постов: 22
  • Репутация: 0

Re: virtuemart 2 отображение цен, как сделать? 9 года, 2 мес. назад #3258

Покажите пожалуйста:
1) скриншот правила расчета (скидка) без выпадающего меню вида расчета
2) скриншот настроек стоимости для товара (детское постельное белье c-5)
3) скриншот товара в категории (детское постельное белье c-5)

Чтобы я смог воспроизвести ваш режим работы и написать решение этой проблемы.
  • joomfans
  • Вне сайта
  • Administrator
  • smo,seo, design
  • Постов: 516
  • Репутация: 48
Adipiscing et ridiculus velit! Mauris, pellentesque duis integer sit non. Augue ac! Dolor tincidunt in etiam mus amet!

Re: virtuemart 2 отображение цен, как сделать? 9 года, 2 мес. назад #3259

Скриншот правил расчета


-5.jpg



Скриншот настроек стоимости для товара


5.jpg



Все товары настроены по аналогии. Если в товаре есть доп поля- то они реализованы так:


118.jpg



Скриншот категории


h8d4770c.jpg
  • freakjr
  • Вне сайта
  • Junior Boarder
  • Постов: 22
  • Репутация: 0
Изменено: 9 года, 2 мес. назад от freakjr.

Re: virtuemart 2 отображение цен, как сделать? 9 года, 2 мес. назад #3260

Это скриншоты без правки кода? Правильно я понял?
  • joomfans
  • Вне сайта
  • Administrator
  • smo,seo, design
  • Постов: 516
  • Репутация: 48
Adipiscing et ridiculus velit! Mauris, pellentesque duis integer sit non. Augue ac! Dolor tincidunt in etiam mus amet!

Re: virtuemart 2 отображение цен, как сделать? 9 года, 2 мес. назад #3261

Да без правок.
  • freakjr
  • Вне сайта
  • Junior Boarder
  • Постов: 22
  • Репутация: 0
Время создания страницы: 0.26 секунд