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


Фотография
- - - - -

Как добавить доп.поля в таблицу в корзине?


Лучший Ответ SmetDenis , 08 September 2016 - 05:58

Шаблон таблицы корзины находится тут

media\zoo\applications\jbuniversal\templates\<ШАБЛОН>\renderer\basket\_table.php

 

Там вы увидите перебор переменной $view->itemsHtml для создания таблицы.

В цикле можно получить доступ к свойствам заказа, например так

 

$cartItem = $view->items[$itemKey];
$cartItem['item']; // объект материала, например.
$cartItem['item']->getElement('<ELEMENT_ID>')->render(); // рендеринг определенного элемента
Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 9

#1 Flowerchek

Flowerchek

Отправлено 07 September 2016 - 10:16

Каждый товар имеет определенные параметры, такие как сорт, профиль и длину. В компоненте они уже заданы для каждого товара.

Необходимо вывести параметры товара в таблицу корзины (как на картинке). Как это сделать?

Прикрепленные изображения

  • index.png

  • 0

#2 SmetDenis

SmetDenis

Отправлено 08 September 2016 - 05:58   Лучший Ответ

Шаблон таблицы корзины находится тут

media\zoo\applications\jbuniversal\templates\<ШАБЛОН>\renderer\basket\_table.php

 

Там вы увидите перебор переменной $view->itemsHtml для создания таблицы.

В цикле можно получить доступ к свойствам заказа, например так

 

$cartItem = $view->items[$itemKey];
$cartItem['item']; // объект материала, например.
$cartItem['item']->getElement('<ELEMENT_ID>')->render(); // рендеринг определенного элемента

  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 Flowerchek

Flowerchek

Отправлено 08 September 2016 - 07:00

Спасибо. С этим всё понятно. Но возник следующий вопрос: для каждого типа товаров мне нужно выводить свои поля. Следовательно, мне нужно создать разные шаблоны. Я пробовала создавать папку здесь ../jbuniversal/templates/catalog/renderer/basket/ со своим названием шаблона и файл _table.php класть уже туда.

Получалось что-то типа ../jbuniversal/templates/catalog/renderer/basket/pilomaterial/_table.php

Но никакого эффекта не получила. Как мне быть в этом случае?


  • 0

#4 SmetDenis

SmetDenis

Отправлено 08 September 2016 - 07:58

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

Поэтому вам нужно сделать условия для разных типов в одном шаблоне.

 

if ($cartItem['item']->type == 'product') { ... }

  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#5 Flowerchek

Flowerchek

Отправлено 20 September 2016 - 14:37

Подскажите, как увеличить кол-во столбцов для модификаторов цены в корзине?
есть такой код в jbuniversal/templates/catalog/renderer/basket/_table.php:
if (!empty($view->items) && !empty($view->modifierPrice)) {
        $this->app->jbassets->less('jbassets:less/cart/modifier.less');
        echo $view->modifierOrderPriceRenderer->render('modifier.default', array(
            'order' => $view->order,
        ));
    }
Так вот здесь вызывается рендер для модификатора. Но при выводе я вижу, что не хватает нескольких <td>. Где находится этот генератор, чтобы я могла добавить недостающие td?
  • 0

#6 SmetDenis

SmetDenis

Отправлено 21 September 2016 - 07:19

Посмотрите этот стиль позиции
media\zoo\applications\jbuniversal\templates-system\renderer\element\order\modifier.php

Он используется для обрамления каждого элемента-модификатора цены.
  • 1
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#7 Flowerchek

Flowerchek

Отправлено 21 September 2016 - 14:15

Спасибо! Всё получилось.

 

Еще мне бы хотелось узнать, в каком файле выводится сервис доставки (shipping). Глянула файлы в папке order, но там не то, что мне нужно. Мне нужен именно генератор этой формы. Хочу блоки местами поменять.


  • 0

#8 Flowerchek

Flowerchek

Отправлено 23 September 2016 - 10:20

Ответьте мне кто-нибудь, пожалуйста, где отредактировать вывод shipping. Мне нужно убрать заголовок "Информация для доставки" и переместить адрес для самовывоза в div с классом jbcart-shippingfield-col?

Времени ждать все выходные нет вообще!!


  • 0

#9 LeMax

LeMax

Отправлено 23 September 2016 - 10:42

Попробуйте здесь: http://forum.jbzoo.c...istema/?p=78023


  • 0

#10 SmetDenis

SmetDenis

Отправлено 23 September 2016 - 11:10

Мне нужно убрать заголовок "Информация для доставки" и переместить адрес для самовывоза в div с классом jbcart-shippingfield-col?


Посмотрите эти файлы.
media\zoo\applications\jbuniversal\templates-system\renderer\shippingfield\default.php

Колонки находятся тут
media\zoo\applications\jbuniversal\templates\<ШАБЛОН>\renderer\basket\_shipping.php



Как понимаю, первоначальный вопрос был решен, поэтому для новых вопросов - создавайте новую тему. Спасибо.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.





Click to return to top of page in style!