Как сделать сортировку по полю в MIGX tv в pdoResources?
Приветствую, подскажите пожалуйста, как делается сортировка ресурсов, по TV полю MIGX?
Есть выборка ресурсов, сейчас отсортирован по 'menuindex' => 'asc', но у каждого ресурса в выборке есть MIGx Tv с именем FIELD_DATE и в нем есть поле date_start тип дата, вот как мне отсортировать ресурсы по этому полю?
Есть выборка ресурсов, сейчас отсортирован по 'menuindex' => 'asc', но у каждого ресурса в выборке есть MIGx Tv с именем FIELD_DATE и в нем есть поле date_start тип дата, вот как мне отсортировать ресурсы по этому полю?
{set $tour = '!pdoResources' | snippet : [
'return' => 'json',
'parents' => $item.id,
'showHidden' => 0,
'showUnpublished' => 0,
'sortby' => ['menuindex' => 'asc'],
] | json_decode : true}
{foreach $tour as $el}
{$el.id | resource: 'pagetitle'}
{set $field_date = json_decode($_modx->resource.field_date, true)}
{foreach $field_date as $idx => $item}
Дата старта: {$item.date_start}
{/foreach}
{/if}
{/foreach}Получается в массиве $tour еще нет этого поля, вот и не пойму как это делать? :( Комментарии: 9
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
А вообще мигикс хранит данные в json посему, ответ простой: никак.
Только если делать MIGXdb. Тут точно получится сделать по человечески сортировку.
-Туры (id 6)
-январь
— тур1
— тур2
-февраль
-март
…
Месяцы вывожу через pdoResources
Так вот у туров ресурсов, есть TV MIGX FIELD_DATE у которого разные поля есть и нужное мне поле date1, вот по этому полю я хочу отсортировать вывод самих ТУРОВ. Это {foreach $tour as $el} массив $tour. Но пока слабоват как решить эту задачу.
Получил тады, теперь хочу отсортировать их, но пока не получается
Array
(
[0] => 2023-02-18 14:21:00
[1] => 2023-02-11 15:06:00
)
И подставляю уже на сайте вместо массива $tours {foreach $tours as $el}