Konstantin

Konstantin

С нами с 24 декабря 2022; Место в рейтинге пользователей: #997
Konstantin
28 января 2025, 10:13
1
0
Сам написал сам ответил ))

оказалось что pdoresources не умеет отсекать родительские ветки как я полагал, поэтому нужно использовать конструкции с where

[[pdoResources?
    &parents=`0`
    &where=`{"parent:!=": "ID_ИСКЛЮЧАЕМОГО_РОДИТЕЛЯ"}`
    &tpl=`rowTpl`
]]
или так если несколько отсечений

[[pdoResources?
    &parents=`0`
    &where=`{"parent:NOT IN": [ID_РОДИТЕЛЬ1, ID_РОДИТЕЛЬ2]}`
    &tpl=`rowTpl`
]]
Наумов Алексей
03 декабря 2024, 09:56
1
+1
Правильно так:

{('<script type="text/javascript" defer> let my_variable = "' ~ $_modx->resource.MyTv ~ '";</script>')| jsToBottom : true}
Артур Шевченко
06 августа 2024, 23:31
1
0
создатели движка настоятельно рекомендуют это сделать
Что мешает сделать так же (см. под заголовком Protect the Core and Other Locations) со второй версией?

Я не отрицаю наличие проблемы, просто не знаю как её решить со стороны компонента.
Павел Романов
10 января 2024, 12:36
1
+1
В колонке назовите это поле как-нибудь иначе:


В рендере используйте реальное имя.
Если pdoTools установлен и поле называется «project», то так:
Артур Шевченко
14 ноября 2023, 11:22
1
+2
Ничто там непонятного? Вот был у тебя вызов
{'!AjaxForm' | snippet: [
'validate' => 'name:required,phone:required',
'successMessage' => 'Форма отправлена!',
'hooks' => 'email',
'emailTo' => 'some@email.ru',
'emailTpl' => 'defaultEmail',
'form' => 'defaultForm'
]}
Ты копируешь в файл core/components/sendit/presets/sendit.inc.php
return [
    'default' => [
        'validate' => 'name:required,phone:required',
        'successMessage' => 'Форма отправлена!',
        'hooks' => 'email',
        'emailTo' => 'some@email.ru',
        'emailTpl' => 'defaultEmail',
        ]
]
А вместо вызова сниппета вставляешь саму форму, которой добавляешь два атрибута data-si-form=«defaultForm», data-si-preset=«default». Всё форма работает. Согласен непривычно, но ничего сложного. Возможно стоит в доку добавить раздел Миграция с AjaxForm.

А по фильтрам, там SendIt идёт как зависимость, но сниппеты будут вызываться классическим способом)))
Сергей Карпович
28 сентября 2023, 13:50
1
0
В итоге порядок действий
1. в Collums нужно создать отдельное поле для рендера.
2. В нем активируем this.renderChunk и в renderChunk template вызываем созданный сниппет
Типо такой:
[[migxIDtoPagetitle?data=`[[+players]]` &chtougodno=`[[+MIGX_id]]` ]]
3. И код сниппета migxIDtoPagetitle: modx.pro/help/6945#comment-136437
Alexey
13 января 2023, 07:45
1
+1
Попробуй так:

$modx->log(modX::LOG_LEVEL_ERROR, print_r($dt, 1));

Это вариант для логирования массива
Fidst
04 декабря 2020, 10:52
1
0
Решено. Надо в /rest создать .htaccess(копия корневого .htaccess) и туда вставить код из шага 2
Евгений Webinmd
20 января 2020, 21:29
3
+3
<img src="{('img/'~$item.image) | phpthumbsup : 'w=240&h=240&zc=1'}">
Павел Романов
02 апреля 2019, 20:28
1
+1
Создайте плагин, в котором получайте значение TV и удаляйте директорию.
Если на удаление ресурса, то повесьте плагин на событие OnDocFormDelete, если на очистку корзины, то на OnBeforeEmptyTrash.

В первом случае есть объект ресурса и значение его TV можно получить через:
$resource->getTVValue('tvname');

Во втором — есть массив ID удаляемых ресурсов, которые можно использовать для получения объектов и дальше как в первом варианте.