Передача дополнительных параметров(цвет, размер) в корзину и в заказ



  • http://test.resites.ru/katalog/detskie-noski/ -страница каталога

    Чанк вывода отдельной продукции

     <div class="col-md-4 produkt_it">  
      <div class="produkt_wrap">      
    <div class="product shk-item">
        <div class="product-b">
            <div class="product-descr">
                <h3>[[+pagetitle]]</h3>
                <div class="produkt_desc">[[+tv.desc]]</div>
                <a href="[[~[[+id]]? &scheme=`abs`]]" class="prod_img">
                    <img class="shk-image" src="[[+tv.Image]]" alt=""  />
                </a>            
                <a class="zeh_gal produkt_lk_ph" rel="[[+alias]]">Просмотреть фотографии</a>
                <div class="produkt_photo" alias="[[+alias]]" photolist="[[+tv.photolist]]"></div>            
                
                 <div class="produkt_sostav"><span>Состав:</span>[[+tv.sostav]]</div>
                  <div class="produkt_color_wr"><span>Цвет:</span>[[*color:replace=`[[+id]]==[[*id]]`  name="size__[*id*]__add" ]]</div>
                 <div class="produkt_size_wr"><span>Размер:</span>
    				<div class="pp_sizeboxes">
    				[[*size:shk_widget=`select:size:desc_page`*]]
    				</div>
    			</div>
                 
                <a class="produkt_more" href="[[~[[+id]]? &scheme=`abs`]]">Подробнее &rsaquo;</a>
                <div style="clear:both;"></div>
            </div>
            <form action="[[~[[*id]]? &scheme=`abs`]]" method="post">
                <fieldset>
                    <input type="hidden" name="shk-id" value="[[+id]]" />
                    <input type="hidden" name="shk-name" value="[[+pagetitle]]" />
                    <input type="hidden" name="shk-count" value="1" />
                    <div class="product-price">
                        
                        <div>Цена: <span class="shk-price">[[+tv.price:num_format]]</span> руб.</div>
                    </div>
                    <button type="submit" class="shk-but btn btn-default">В корзину</button>
                </fieldset>
            </form>
        </div>
    </div>
          
      </div>
      
      
    </div>```
    
    С интерфесом выбора цвета и размера все в порядке. не получается выбранные параметры добавит в корзину и в сам заказ. Подскажите пожалуйста как это сделать.


  • С интерфйесом выбора цвета и размера все в порядке. не получается выбранные параметры добавит в корзину и в сам заказ. Подскажите пожалуйста как это сделать.

    Чанк shopCartRow

    <tr class="cart-order">
        <td align="left"><b><a href="[[+url]]">[[+name]]</a></b> [[+addit_data]]</td>	
        <td>[[+shk_size+]] [[+shk_size]]</td>
        <td><img src="/[[+Image]]" width="50" alt="[[+name]]" /></td>
        <td>[[+price]] [[+currency]]</td>
        <td>
            <input class="shk-count" type="text" size="2" name="count[]" maxlength="3" title="изменить количество" value="[[+count]]" />
        </td>
        <td align="right">
            <a href="[[+url_del_item]]" title="Удалить" class="shk-del"><img src="assets/components/shopkeeper3/web/css/default/delete.gif" width="17" height="17" alt="Удалить" /></a>
        </td>
    </tr>
    
    

    из дополнительных параметров изображение выводится, а например размер нет



  • Вот сформулировал вопрос и сам понял видимо, конечно же эта строка

    [[*size:shk_widget=`select:size:desc_page`*]]
    

    должна находится в теге form

    В любом случае - спасибо форуму, сформулированные в нем мысли помогли найти косяк.


  • Администраторы

    У вас Evolution? Это надо в самом начале сказать.

    Обновлено:
    Хотя может и не Evo. Теги везде разные.

    [[+shk_size+]] [[+shk_size]]



  • У меня revo 2.5.0

    [[*size:shk_widget=`select:size:desc_page`*]]
    

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

    [[+size:shk_widget=`select:size+]]
    

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


  • Администраторы

    @Саша
    Начните отсюда
    https://rtfm.modx.com/revolution/2.x/making-sites-with-modx/tag-syntax
    а то у вас мешанина какая-то в тегах.



  • Видимо поиск решения задачи в интернете наложило смешивание тегов REVO и EVO.
    Теперь я понял разницу.
    Но вопрос все еще остается актуальным, почему данный код выводит все нормально если находимся на странице отдельного товара:

    [[*size:shk_widget=`select:size`]]
    

    а если этот же код вызвать при отображении товаров в списке то ничего не возвращает


  • Администраторы

    а если этот же код вызвать при отображении товаров в списке то ничего не возвращает

    Это тоже из-за тегов, которые вы используете. Изучите получше MODX.
    В списке должно быть

    [[+size]]
    

    или

    [[+tv.size]]
    


  • таким образом уже пробовал результат- пустое значение



  • [[+tv.size]
    

    этот код выдает значение вида 21==0||23==0
    что меня не устраивает, я хочу чтоб вышли радиокнопки...


  • Администраторы

    @Саша

    этот код выдает значение вида 21==0||23==0
    что меня не устраивает, я хочу чтоб вышли радиокнопки...

    Читайте документацию.



  • @Andchir в таком случае не затруднит ли вас дать ссылку, на раздел документации который, на ваш взгляд, мне стоит изучить?



  • По вашей рекомендации в очередной раз изучил документацию
    http://wiki.modx-shopkeeper.ru/doku.php?id=shk3_docs#дополнительные_параметры_товаров

    это мне все равно не помогло решить мою задачу
    повторюсь еще раз, в надежде что кто да сможет подсказать

    на странице товара с помощью [[*size:replace=[[+id]]==[[*id]]]] я получаю код описанный ниже, как добиться того же эффекта, в списке товаров(В чанке сниппета getResources или getProducts )? [[+tv.size]] возвращает просто значения доп параметра, а мне на выходе хочется получить радиокнопки.

    <div class="pp_sizeboxes">
    	<div>
    		<input class="shk_param" type="radio" name="size__" value="0__0" id="size0" onclick="SHK.additOpt(this)"> 
    		<label for="size0">21</label>
    	</div>
    	<div>
    		<input class="shk_param" type="radio" name="size__" value="1__0" id="size1" onclick="SHK.additOpt(this)"> 
    		<label for="size1">23</label>
    	</div>
    </div>
    

    http://test.resites.ru/katalog/detskie-noski/s-003 -пример на странице товаров
    http://test.resites.ru/katalog/detskie-noski/ - пример списка товаров, где вместо 21==0||23==0 хотелось бы видеть радиокнопки


  • Администраторы

    http://wiki.modx-shopkeeper.ru/doku.php?id=getproducts

    processTVs - Применять параметр "Параметры ввода" для TV.
    processTVList - Список TV через запятую, для которых применять processTVs.



  • Благодарю всем- цель достигнута)

    [[getProducts?
    	&tpl=`prod_item`
    	&includeTVs=`image,sostav,price,desc,color,photolist,size`
            &processTVList=`image,sostav,price,desc,color,photolist,size`
            &processTVs=`1`
    	&depth=`0`
    	&limit=`88`
            &sortby=`menuindex` 
            &sortdir=`ASC`
    ]]
    
    

    после указания processTVs и processTVList все стало работать как мне и нужно)





Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.