К содержанию

[Решено] Дополнительный параметр для msOrder

Здравствуйте!

Кто знает возможно ли сделать следующее и если можно то как?
У нас в msOrder есть пару input(radio) которые определяют какую доставку выберут. Можно ли внутри самой доставки сделать дополнительный input(radio) (К примеру при помощи TV поля, не знаю) при помощи которого будут определяться дальнейшие параметры и назначаться обязательные для заполнения поля относительно выбранного внутри input(radio)?
Если слишком запутано… К примеру есть выбор доставки «Доставка по городу» и «Доставка по стране», а в каждом из них будет выборка самих доставок через input()radio и так чтоб это отправлялось менеджеру в письме.
Знает кто как это сделать?
Oleg
Oleg
24 апреля 2019, 19:08
modx.pro
1 277
Реклама

Комментарии: 7

eflit
eflit Старожил
24 апреля 2019, 20:50
Я бы сделал это следующим образом создал бы доставки допустим: 1. Доставка по городу курьером 2. Доставка по городу почтой 3. Доставка по стране курьером 4. Доставка по стране почтой. В поле описание писал бы курьером, почтой. На фронтенде выводил бы не название доставки а {$delivery.description}.

Далее сделал так:

Доставка по городу


вывод доставок 1,2

Доставка по стране


вывод доставок 3,4
    Oleg
    Oleg Старожил
    24 апреля 2019, 21:16
    Точно. Хорошая идея! Спасибо!
      Oleg
      Oleg Старожил
      24 апреля 2019, 21:34
      А как вывести определённые доставки вы не знаете?
        eflit
        eflit Старожил
        24 апреля 2019, 21:44
        Ну допустим так выведем все доставки с id от 1 до 3
        {var $v = 0}
        {foreach $deliveries as $idx => $delivery}
        {var $checked = !$order.delivery && $i == 0 || $delivery.id == $order.delivery}
        {var $v += 1}
        {if $v > 3}
        {break}
        {/if}
        {$delivery.description}
        {/foreach}
        А так все что после с id 3
        {var $v = 0}
        {foreach $deliveries as $idx => $delivery}
        {var $checked = !$order.delivery && $i == 0 || $delivery.id == $order.delivery}
        {var $v += 1}
        {if $v > 3}
        {$delivery.description}
        {/if}
        {/foreach}
        Думаю что суть поймете
          Oleg
          Oleg Старожил
          24 апреля 2019, 22:05
          А Вы не знаете где можно найти уроки как писать такой код? В каких разделах документации это обитает?
            Александр Мельник
            Александр Мельник Проверенный
            24 апреля 2019, 22:19
            например здесь
            github.com/fenom-template/fenom/tree/master/docs/ru
            Кстати там посмотрите описание циклов foreach
            можно даже не задавать отдельную переменную и инкрементировать ее, а воспользоваться итерациями цикла.
              eflit
              eflit Старожил
              24 апреля 2019, 22:24
              Даже не знаю как ответить в данной задаче нужно было ограничить цикл foreach думаю вам стоит найти документацию в интернете по циклу foreach так же почитать тут о феном https://docs.modx.pro/komponentyi/pdotools/parser#Шаблонизатор-Fenom
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        7