Всего 125 949 комментариев

Роман
20 мая 2022, 12:20
0
Ой, извиняюсь, вот так не работает {set $sort = json_decode($_modx->resource.field_sort, true)}
Артур Шевченко
20 мая 2022, 11:46
0
Я полагаю потому что парсер ищет поле tv_name.field_sort, а его нет.
Роман
20 мая 2022, 11:39
0
Попробую сейчас :))
Подскажите пожалуйста еще один момент, не понимаю почему не работает

Если я пишу вот так для текущей страницы вызов MIGX {set $sort = json_decode(1 | resource: 'field_sort', true)}

Почему вот так не работает???
{set $sort = json_decode($_modx->resource.tv_name.field_sort, true)}
Артур Шевченко
20 мая 2022, 11:37
0
Думаю из объяснения @Александр Мельник понятно почему ссылку я дать не могу.
Алексей Шумаев
20 мая 2022, 11:35
0
Хороший повод сделать своё дополнение.
Проще всего взять заготовку, например: github.com/modx-pro/modExtra
Александр Мельник
20 мая 2022, 10:56
0
Я хочу создать простой отчет с фильтром в менеджере
Что это значит? Вы хотите внутри человека менеджера запихнуть фильтр и бумажный отчет? Это жестоко.
Но если без иронии, то тоже не понятно. Что в вашем понимании «отчет». Отчет чего или кого. Причем тут фильтр?

А ответ Артура следует понимать так — создать что либо в админ панели довольно сложно, вам нужно как минимум хорошо знать сам modx и фреймворк extjs который отвечает за отрисовку интерфейса. Поэтому гораздо проще создать в админке просто ресурс, но снять галочку — опубликован. Внутри этого ресурса, вставляйте какие угодно самописные (или нет) сниппеты, которые создадут нужную вам логику. Такую страницу можно открыть по урлу как любую другую, но изза того, что она неопубликована, видите ее только вы, предварительно авторизовавшись в админке.
Pakos Fakos
20 мая 2022, 09:50
0
что вы имеете в виду под: «я бы сделал отдельный ресурс»? не могли бы вы быть более конкретным с простым примером или ссылкой?
Спасибо
SYAN
20 мая 2022, 01:16
0
решено
запуск сниппета в head
<?php
$getid = $_GET['id'];
if ($getid != '' && is_numeric($getid)) { 
    $url=$modx->makeUrl($modx->getOption('id', $scriptProperties, $modx->resource->get('id')));
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: '.$url.'');
    echo '<meta http-equiv="refresh" content="0;URL='.$url.'"/>'; }
Артур Шевченко
19 мая 2022, 23:44
+1
Ты конечно извини, но что толку от простоты твоей, если она не работает?))) Определи путь в отдельной переменной и уже её вставь в include и всё сработает.
Роман
19 мая 2022, 23:34
0
а так не проще? {$_modx->getChunk('@FILE chunks/'~$item.section~'.tpl')}

Мне кажется ваш вариант будет дольше грузиться

{set $tpl = '@FILE chunks/'~$item.section~'.tpl'}
{$_modx->getChunk($tpl)}

я хочу так в foreach вставить {include 'file:chunks/'~$item.section~'.tpl'} но не работает :(
Артур Шевченко
19 мая 2022, 23:26
0
Про дополнения не знаю. Migxdb можешь попробовать. Но я бы сделал отдельный ресурс доступный только админу с фронта.
Артур Шевченко
19 мая 2022, 23:07
0
Попробуй так
{set $sort = json_decode(1 | resource : 'field-sort', true)}
{if $sort}
{foreach $sort as $item}
{set $tpl = '@FILE chunks/'~$item.section~'.tpl'}
{$_modx->getChunk($tpl)}
{/foreach}
{/if}
R2m0x94 (Vasily)
19 мая 2022, 18:29
0
Да, вроде log_level стояло значение 3 (INFO), исправил на 1 (ERROR) и всё прошло. Так как INFO это просто оповещение информации о том, что кэш-файл был удалён с сервера.
Артур Шевченко
19 мая 2022, 17:58
+1
Вот msProducts, но те же параметры подходят и для pdoPage. Я про leftJoin если что.
{set $product_sb_category = ('!msProducts' | snippet : [
                                    'parents' => 13,
                                    'resources' => $_modx->resource.id,
                                    'loadModels' => 'linkproducts',
                                    'class' => 'msProduct',
                                    'leftJoin' => [
                                        'Category' => [
                                            'class' => 'lpLink',
                                            'on' => 'msProduct.id = Category.product_id',
                                        ],
                                    ],
                                    'select' => [
                                        'msProduct' => '*',
                                        'Category' => 'Category.block_id, Category.product_id',
                                    ],
                                    'tvPrefix' => '',
                                    'limit' => 0,
                                    'tpl' => '@INLINE {$block_id}',
                                ])}
alex
19 мая 2022, 17:14
0
Да, забыл написать. pdoPage
ewal
19 мая 2022, 16:17
0
Удалось решить эту проблему??????? Такая же байда.
Артур Шевченко
19 мая 2022, 16:03
0
pdoResources может быть? Или xpdo? Что ты имеешь в виду?
alex
19 мая 2022, 15:58
0
Да, то, что нужно, еще бы умудриться на pdoTools переписать запрос )
Артур Шевченко
19 мая 2022, 15:52
0
Понятно. Я что-то такое делал. Собственно проблема в том, что из плагина достаточно проблематично (читай невозможно) вернуть дополнительные данные на фронт, т.е. тебе нужно пересчитывать корзину на ронте отдельно. И я бы воздержался от изменения исходников, а использовал бы возможность добавить свой колбэк.