param-edit



  • Добрый день. Столкнулся с проблемой.
    Для начала вызовы

    Шопкипер вызывается на каждой странице так
    [[Shopkeeper3@cart_catalog?]]

    Системные настройки
    shk3.property_sets ->cart_catalog

    Список параметров cart_catalog (только тех которые были изменены после связки)
    flyToCart -> scrollimage
    orderFormPageId-> 15

    Чанки shopCart.tpl и shopCartRow.tpl
    Точно такие же как и изначально, только изменен параметр data-shopcart="2" на data-shopcart="1"

    Оформление заказа (id=15)
    [[!FormIt?
    &hooks=spam,shk_fihook,email,FormItAutoResponder,redirect
    &submitVar=order
    &emailTpl=shopOrderReport
    &fiarTpl=shopOrderReport
    &emailSubject=В интернет-магазине "[[++site_name]]" сделан новый заказ
    &fiarSubject=Вы сделали заказ в интернет-магазине "[[++site_name]]"
    &emailTo=[[++emailsender]]
    &redirectTo=13
    &validate=address:required,fullname:required,email:email:required,phone:required
    &errTpl=<br /><span class="error">[[+error]]
    ]]

    [[!$shopOrderForm]]

    Страница товара

    <h1>[[*pagetitle]]</h1>
    <img src="[[*image]]" alt="" />
    <form action="[[~[[*id]]? &scheme=`abs`]]" method="post"> 
        <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>
                <h5>Дополнительные услуги</h5>
                [[*params:replace=`[[+id]]==[[*id]]`]]
            </div>
            <div align="right">
            Цена: <span class="shk-price" id="stuff_[[*id]]_price">[[*price]]</span> руб.
            <button type="submit" name="shk-submit" class="shk-but">В корзину</button>
        </div>
    </form>```
    
    

    Доп поле params
    Тип ввода -> param_edit
    Поля -> Название,Цена

    Параметры вывода shk_checkbox
    SHK.additOpt(this)
    shk_param
    div
    Нет
    params

    Сама проблема заключается в том что эти доп параметры не корректно передают название и цену в "Управление заказми"
    Если редактировать заказ то в параметрах передает так:
    Значение: "Дополнительные параметры Гарантия" (то есть еще и прицепляет описание доп-поля)
    Цена: Вообще пустая.
    Но цена товара измененная (Изначальная стоимость товара + доп параметр)

    modx 2.5.0
    shopkeeper3 3.2.4


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

    [[Shopkeeper3@cart_catalog?]]
    

    Лишний "?" в конце.

    Цена: Вообще пустая.
    Но цена товара измененная (Изначальная стоимость товара + доп параметр)

    В параметрах сниппета Shopkeeper есть разные режимы изменения цены - changePrice.
    Поставьте changePrice = Нет.



  • [[Shopkeeper3@cart_catalog?]]
    

    Этот вопрос случайно поставил когда пост писал.
    А за "changePrice = Нет" спасибо, в виде скромного пожертвования)



  • @Andchir
    Так, и еще вопрос.
    В каталоге пытаюсь вывести [[+tv.params]]
    Отдает не обработанное значение Гарантия==500||Обслуживание==100
    Без обертки.
    Каталог tagmanager2 + getProducts с ajax фильтрацией

    В связанном наборе параметров изменено:
    element -> getProducts
    includeTVList -> price,image,params,tags
    includeTVs-> Да
    noResults-> К сожалению, ничего не найдено. Ослабьте фильтр и попробуйте еще раз
    tpl-> product
    where -> {"isfolder":"0"}

    Сам шаблон product

    <div class="col-md-4 product shk-item">
        <header>
            <a href="[[~[[+id]]? &scheme=`abs`]]">
                <img class="shk-image" src="assets/images/[[+tv.image]]" alt="[[+pagetitle]]" title="[[+pagetitle]]" />
            </a>
        </header>
        <div>
            <h5>[[+pagetitle]]</h5>
            <a class="btn btn-default" href="[[~[[+id]]? &scheme=`abs`]]">Подробнее</a>
        </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">
                    [[+tv.params]]
                    <button type="submit" class="shk-but btn btn-default">В корзину</button>
                    <div>Цена: <span class="shk-price">[[+tv.price:num_format]]</span> руб.</div>
                </div>
            </fieldset>
        </form>
    </div>```

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

    Отдает не обработанное значение

    Документация:

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

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



  • @Andchir Спасибо огромное! Все работает.



  • Тоже возникли вопросы по работе с дополнительными параметрами.

    Указав [[*params:replace=[[+id]]==[[*id]]]] на карточке товара меняется цена, но никак не могу передать ее в большую корзину. На странице оформления заказа всегда выводится основная цена, загнанная в tv price.

    Вывод на странице оформления заказа прописан так:

    <td>
            <span class="amount">[[+price_total]] [[+currency]]</span>
        </td>
        <td>
            <div class="quantity">
    		<input class="shk-count" type="text" size="2" id="count[]" name="count[]" maxlength="3" title="изменить количество" value="[[+count]]" />
            </div>
        </td>
        <td>
            <span class="amount">[[+price_count_total]] [[+currency]]</span>
        </td>
    

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

    @moduser не надо мусорить. Создайте отдельную тему с подробностями и скриншотами.



Последние темы

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