Как сделать, чтобы на MODX Revo можно было загрузить картинки с любыми названиями?

На MODX Revo, по умолчанию, названия файлов загружаемых изображений автоматически заменяются на безопасные названия, чтобы предотвратить возможные проблемы исходящие от пользовательского ввода. Однако, если вы хотите разрешить загрузку изображений с любыми названиями, вы можете внести несколько изменений в настройки MODX Revo и использовать косвенные методы.

Во-первых, установите allowUnsafeNames в значение true для конфигурации MODX, открыв файл core/config/config.inc.php и добавив следующую строку:

$modx_config['allowUnsafeNames'] = true;

Затем, отредактируйте файл core/model/modx/modfileabstraction/modxfileabstraction.class.php и найдите функцию getSafeFileName. Закомментируйте или удалите следующий код:

$basename = preg_replace('/[^a-zA-Z0-9_-.]/', '', $basename);

// Remove double dots from the filename
$basename = str_replace('..', '.', $basename);

Теперь MODX не будет изменять названия загружаемых файлов. Однако, имейте в виду, что это может сделать ваш сайт и ваши пользователи более подверженными уязвимостям безопасности.

Также стоит отметить, что модификация кода MODX может привести к потере поддержки или возникновению проблем при обновлении MODX до новой версии, поэтому сделайте полную копию вашего сайта и базы данных перед внесением изменений.

Если вы все же хотите иметь возможность загружать файлы с различными названиями, рекомендуется использовать плагины или пользовательские модули MODX для создания собственной логики обработки загрузки файлов, чтобы обеспечить безопасность и гибкость вашего сайта.