Всего 123 609 комментариев

Сергей Фещуков
29 июля 2024, 08:19
0
В properties записывается cf.from_city с ID города, можно его использовать в письме. Вроде как так:
{$properties['cf.from_city']}
Но могу ошибаться.
Роман
28 июля 2024, 14:25
0
Алексей, спасибо! Проблему настройка действительно решает — не так уж она и для админа нужна. А если вдруг понадобится, проще «мигнуть» ей.
Alexey
28 июля 2024, 12:31
0
В системных настройках админки есть опция «enable_dragdrop», которая запрещает/разрешает перетаскивание в дереве меню админки. Если необходимо отключить перетаскивание для конкретной группы пользователей, то можно попробовать в плагине на событие OnMODXInit проверять группу текущего пользователя и — если группа подходит — как-то так:

$modx->setOption('enable_dragdrop', 0);

Возможно, для этой цели есть более «точные» события, внимательно не смотрел
Артур Шевченко
28 июля 2024, 10:47
0
Не выношу папку core и, должен сказать, за 6 лет проблем с безопасностью не было.

теперь эта папка доступна извне
Эта проблема решается настройкой конфигурации сервера.
Rrp2010
28 июля 2024, 10:31
0
$freedeliverysumm = $delivery->get('free_delivery_amount');
Konstantin
28 июля 2024, 10:29
0
Подскажите как быть если по соображениям безопастности папка core находится в другом месте и переименована? при установке пакета sendit белый экран. Простой перенос файлов из автосозданной при установке пакета папки core в мою core ничего не изменилось — белый экран, заработало только когда вернул папку core в корень сайта. Но теперь эта папка доступна извне что не безопасно, Подскажите как решаете этот вопрос вы?
Сергей
28 июля 2024, 09:05
0
Можно поинтересоваться чем обусловлено использование input[type=«submit»] вместо button. Мало того что форма сейчас просто не отправляется — обновляется страница, в предыдущих версиях работало отправка по button (бог с ним про disable и тд) — проверки кнопки не было.
Но как использовать input, если переписывать с button, если кнопка нужна двустрочная или текст с картинкой. Попалось сейчас пару проектов таких при обновлении.
Павел Романов
27 июля 2024, 18:46
+1
Добавлю пять копеек )
Если указать $_SERVER['DOCUMENT_ROOT'], то, к примеру, скрипты, использующие подключение API MODX не будут работать, если они запускаются по CRON.
Вячеслав Варов
27 июля 2024, 18:36
0
попробуй c указанием пространства, например у меня есть пространство имен
mynamespace внутри него есть все ключи и заданы они как mynamespace.key_name

в итоге вывожу
{'mynamespace.key_name' | lexicon}


Плагин на загрузку лексикона выглядит так

<?php
$lang = $modx->getOption('cultureKey');
$modx->setOption('cultureKey',$lang);
$modx->lexicon->load($lang.':mynamespace:default');
Запуск на системные события OnParseDocument и OnLoadWebDocument
Вячеслав Варов
27 июля 2024, 17:28
0
ну вот меня это и смутило, отсюда и задался вопросом — вдруг это как-то для безопасности или еще чего сделано)
Сергей Макаров
27 июля 2024, 15:30
0
подскажите а как вывести информацию в письме tpl.msEmail в какой город был выбран и сделан заказ*? Заранее спасибо!
Ivan
27 июля 2024, 14:49
0
Вообще странные они ребята кто это придумал. Если у человека кастомные настройки нужны, то там же есть выбор Advanced Installation Package. В 99% случаев $_SERVER['DOCUMENT_ROOT'] всем подойдет. Остальные CMS всегда используют эту переменную, но только MODX решил выделиться)))
Вячеслав Варов
27 июля 2024, 14:26
0
Супер, да речь об одном конкретном сайте, спасибо!)
Артур Шевченко
27 июля 2024, 14:18
+1
Если все сайты, которые ты делаешь, будут всегда работать на сервере, который ты сам настраивал, и ты уверен, что их не перенесут на шаред с неизвестными настройками, то конечно используй константу.
Вячеслав Варов
27 июля 2024, 13:51
0
Этот ответ из gpt я уже читал и мне не показалось это чемто критичным, однако все таки решил спросить)

У меня сайт на nginx все пути прописывал сам, поэтому если это никак не отражается то в целом действительно проще использовать серверную константу
Никита Боднар
27 июля 2024, 12:12
0
Удалось решить вопрос, указав загрузку лексикона в каждом чанке, до этого загрузка лексикона стояла глобально для каждой страницы.
Никита Боднар
27 июля 2024, 11:55
0
babel:translate
Артур Шевченко
27 июля 2024, 11:48
0
  1. Разные серверные окружения: Значение $_SERVER['DOCUMENT_ROOT'] может отличаться в разных серверных окружениях. Например, на одном сервере оно может быть установлено как /var/www/html, а на другом — как /usr/local/apache/htdocs. Если ваш код зависит от конкретного значения $_SERVER['DOCUMENT_ROOT'], то он может работать неправильно на разных серверах.
  2. Символические ссылки: Если ваш сайт использует символические ссылки, то $_SERVER['DOCUMENT_ROOT'] может указывать на физический путь, а не на путь, который вы ожидаете. Например, если ваш сайт находится в /var/www/html/mywebsite, а $_SERVER['DOCUMENT_ROOT'] указывает на /var/www/html, то $_SERVER['DOCUMENT_ROOT'] не будет указывать на корневую папку вашего сайта.
  3. Безопасность: Использование $_SERVER['DOCUMENT_ROOT'] напрямую может привести к уязвимостям безопасности. Например, если ваш код использует $_SERVER['DOCUMENT_ROOT'] для создания путей к файлам, то злоумышленник может использовать это для получения доступа к файлам, которые не должны быть доступны.
  4. Поддержка разных версий PHP: Значение $_SERVER['DOCUMENT_ROOT'] может отличаться в разных версиях PHP. Например, в PHP 5.3 и выше оно может быть установлено как /var/www/html, а в более ранних версиях — как /var/www. Если ваш код зависит от конкретного значения $_SERVER['DOCUMENT_ROOT'], то он может работать неправильно на разных версиях PHP.
Артур Шевченко
27 июля 2024, 11:43
+1
В каком пространстве имён эти записи лежат?
Madao
27 июля 2024, 01:17
0
modx 3.0.5 — при загрузке картинок удаляет точку перед расширением файла (получается вместо imagename.png — imagenamepng), соответственно картинка не работает. это норма или надо править где-то к конфиге? пробовал убирать точку из friendly_alias_trim_chars — ничего не поменялось. в friendly_alias_restrict_chars_pattern точка отсутствует.