Опции товара в заказе Новый


Привет!
До того как задать вопрос я честно поискал тут похожие вопросы и даже нашел вроде как ответы.

Суть вот в чем: я добавил для товара три опции — две числовые и одна «выпадающий список». Цена товара от них не зависит, но мне хотелось бы эти опции видеть в заказе — я использую msListOrders для вывода заказов.

Я нашел, что нужно добавить опции в поле ms2_order_product_field и тогда они появятся как options у купленного товара в заказе. Я честно пробовал добавлять в виде option_[имя опции] и product_[имя опции] и просто имя опции в это поле. При этом указывал эти поля в форме добавления товара:
<input type="hidden" name="options[hours]" value="{$hours}">
<input type="hidden" name="options[ability_type]" value="{$ability_type}">
<input type="hidden" name="options[peoples]" value="{$peoples}">
Помогите пожалуйста вывести их у купленного товара. С меня пиво!
15 октября 2016, 21:39    Андрей Сухомозгий   G+  
1    414 0

Комментарии (10)

  1. Володя 15 октября 2016, 21:49 # 0
    я честно не понял, что вы хотите сделать?
    у продукта могут быть опции, при добавлении продукта в корзину они падают аналогично в options и так же видны в корзине их вывод есть в дефолтных чанках miniShop2.
    При успешном сабмите заказа получаем заказ и продукты заказа с аналогичными свойствами и выводятся они абсолютно так же, в дефолтном чанке msListOrders это тоже есть.
    В чем загвоздка?
    1. Андрей Сухомозгий 15 октября 2016, 21:55 # 0
      Я добавил опции в настройку:

      Опции я заполняю:

      В форме добавления товара указываю даже поля:
      <input type="hidden" name="options[hours]" value="{$hours}">
      <input type="hidden" name="options[ability_type]" value="{$ability_type}">
      <input type="hidden" name="options[peoples]" value="{$peoples}">
      Но в покупке я не вижу этих полей:
      1. Володя 15 октября 2016, 22:01 # 0
        поле Опции товара — они должны быть там. У вас пустой массив — значит их нет.
        1. Андрей Сухомозгий 15 октября 2016, 22:02 # 0
          Да, пустой) Вот я и спрашиваю тут — правильно ли я указываю имена в настройке и правильно ли в форме добавления в корзину поля указываю)
          1. Володя 15 октября 2016, 22:05 # 0
            указываете правильно, другой вопрос возможно эти поля у вас на странице товара, а на странице каталога их нет и товар пользователь может добавить без них и в корзину они не попадут и в товар заказа соответственно тоже.
            1. Андрей Сухомозгий 15 октября 2016, 22:15 # 0
              Володя) Стыдно мне… Ниже в форме добавления в корзину нашел еще вот такую строку:
              <input type="hidden" name="options[]">
              Затирало все опции вышеуказанные… Вот я лох
              1. Володя 15 октября 2016, 22:17 # 0
                ну бывает, че тут постыдного то)
      2. Андрей Сухомозгий 15 октября 2016, 21:57 # 0
        Ну и в чанке tpl.msListOrders.order
        {foreach $product.options | fromJSON as $key => $option}
        									<li>
        										{('ms2_product_' ~ $key) | lexicon}:{$option}
        									</li>
        								{/foreach}
                                      {$product.ability_type}, {$product.peoples} персоны,
                                      {if $product.hours == 0}
                                          Без ограничений по времени
                                      {else}
                                          {$product.hours | declension : 'час|часа|чосов' : true}
                                      {/if}
        Вот такой код ничего не выводит, потому что опции пустые приходят
        1. Володя 15 октября 2016, 22:02 # 0
          опции в $product.options
          вот этот код ничего не выведет
          {$product.ability_type}, {$product.peoples} персоны,
                                        {if $product.hours == 0}
                                            Без ограничений по времени
                                        {else}
                                            {$product.hours | declension : 'час|часа|чосов' : true}
                                        {/if}
          
          1. Володя 15 октября 2016, 22:03 # 0
            опции выводятся выше по коду
            {foreach $product.options| fromJSON as $key => $option}
            <li>
            	{('ms2_product_' ~ $key) | lexicon}:{$option}
            </li>
            {/foreach}
            
        Вы должны авторизоваться, чтобы оставлять комментарии.