Тема: как в шаблоне product.tpl обратиться к полю товарного предложения

как в шаблоне product.tpl обратиться к полю товарного предложения (из таблицы product_offer), например к количеству товарного предложения (num) или к ID товарного предложения или к вновь созданному с помощью ORM полю.

Повысить оценку Понизить оценку

2

Re: как в шаблоне product.tpl обратиться к полю товарного предложения

{foreach $product.offers.items as $offer_sortn=>$offer}
    {* $offer - здесь объект \Catalog\Model\Orm\Offer *}
    {$offer.num} 
    {$offer.id}
{/foreach}

Повысить оценку Понизить оценку

3 Отредактировано AleksC1976 (17.12.2014 13:25:31)

Re: как в шаблоне product.tpl обратиться к полю товарного предложения

Это понятно. А как обратиться к полю ТЕКУЩЕГО товарного предложения, то что выбрано в селекте?

Повысить оценку Понизить оценку

4

Re: как в шаблоне product.tpl обратиться к полю товарного предложения

Очень объемный вопрос, но постараюсь вкратце объяснить.

Так как при выборе  комплектации в селекторе, не происходит перезагрузок страницы, вам необходимо это делать с помощью JavaScript.  Посмотрите, как меняются цены при выборе селектора комплектаций. Что-то аналогичное нужно судя по всему вам.

Информация по комплектации сначала выводятся в атрибутах элемента формы:

<select name="offer">
    {foreach from=$product.offers.items key=key item=offer name=offers}
    <option value="{$key}" {if $smarty.foreach.offers.first}checked{/if} {if $check_quantity}data-num="{$offer.num}"{/if} data-change-cost='{ ".offerBarcode": "{$offer.barcode|default:$product.barcode}", ".myCost": "{$product->getCost(null, $key)}", ".lastPrice": "{$product->getCost('Зачеркнутая цена', $key)}"}' data-sticks='{$offer->getStickJson()}'>{$offer.title}</option>
    {/foreach}
</select>

А затем уже в JavaScript вы можете получить текущую выбранную комплектацию, считать у неё атрибут и сделать с ним что угодно(например вывести куда-нибудь).

Повысить оценку Понизить оценку