dimayakovlev.ru


Включение автоматической транслитерации в GetSimple CMS 3.4

Я уже писал о том, как самостоятельно решить проблему автоматической транслитерации имён загружаемых файлов в GetSimple CMS. Для тех, кто не хотел вносить изменения в файлы системы управления контентом, есть хорошая новость: в GetSimple CMS 3.4 возможность автоматической транслитерации будет доступна по умолчанию. Можно не дожидаться официального релиза, и уже сейчас установить ветку master, чтобы оценить, как это работает.

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

Дело в том, что для работы функции автоматической транслитерации пользователю необходимо задать корректную локаль PHP. Для этого в файле gsconfig.php следует раскомментировать строку установки локали и изменить setlocale(LC_ALL, 'en_US') на setlocale(LC_ALL, 'ru_RU.utf8');.

После этого автоматическая транслитерация имён файлов будет работать так, как ожидается. Кроме транслитерации имён загружаемых файлов, также будет работать транслитерация имён директорий, создаваемых в менеджере файлов.

Используемая по умолчанию таблица транслитерации, определена в стандартном языковом файле /admin/lang/en_US.php. Для её изменения можно либо отредактировать стандартный языковой файл, либо переопределить её в новом языковом файле для собственного языка.