Custom Fields for All вывод в разные позиции

  • 1 Ответов
  • 581 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

bodich

  • Захожу иногда
  • **
  • 15
  • 1
Всем привет!

Вывел поля плагина (Custom Fields for All) в разные блока карточки товара
Код вывода
<?php echo shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$this->product,'position'=>'pogonazh'));?>
Но теперь перестало пересчитавать цену после выбора опции.
А вот если оставить позицию по умолчанию addtocart - тогда нормально считает
http://bodich.testvt.ukrline.com.ua/index.php/dveri/mezhkomnatnye-dveri/%D0%B4%D0%B2%D0%B5%D1%80%D1%8C-1-detail
Кто поскажет что нужно сделать чтобы оно считало?

*

gartes

  • Живу я здесь
  • ******
  • 951
  • 71
  • Е = mс²
Re: Custom Fields for All вывод в разные позиции
« Ответ #1 : 09.09.2015, 01:07:52 »
Ну тут какая ситуация Чтобы обновить цену за товар VirtueMart должен ловить событие изменения.
И мало того ваши поля должны находится в самой форме товара
Код
<form method="post" class="product js-recalculate" action="#">
Вот в этой форме.
Тогда цена будет меняться.

А в данный момент на ваших дополнительных полях весит динамическое обновления контента.)
Как вариант поставить в addtocart  и CSS - ом переставить их влево.

Вариант второй (Немного сложнее.)
в файле vmprices.js
Код
VirtueMart.setproducttype = function(form, id) {
[s]form.view = null;[/s]
var datas = form.serialize();

Так вот вам нужно в переменную datas дописать то что у вас в селектах с лева.
И при этом еще и событие повесить на эти селекты.
Код
jQuery(select).off('change', VirtueMart.eventsetproducttype);
jQuery(select).on('change', {cart:cart,virtuemart_product_id:virtuemart_product_id},Virtuemart.eventsetproducttype);

Что то типа такого.
Первая строчка снимает все обработчики с элемента. Вторая устанавливает новые. )

Короче геморное занятие это делать тем более писать об том как это сделать..
На самом деле нужно 2 вещи сделать
1 - что бы в запрос добавились данные с селектов которые не в корзине. (ну вроде не сложно.)
2 - Повесить на селекты обработчик события .
Все.