Файлы перевода языка SugarCRM - PullRequest
       10

Файлы перевода языка SugarCRM

0 голосов
/ 14 сентября 2018

Есть ли способ ограничить SugarCRM только одним языком (us_en)? Прямо сейчас все, что мы делаем, генерирует 40+ языковых файлов, которые мы никогда не будем использовать. Это очень затрудняет поиск вещей в папках.

После удаления всех языков, кроме en_us, мой /sugarcrm/config_override.php содержит следующее:

<?php
/***CONFIGURATOR***/
$sugar_config['disabled_languages'] = 'bg_BG,cs_CZ,da_DK,de_DE,el_EL,es_ES,fr_FR,he_IL,
hu_HU,hr_HR,it_it,lt_LT,ja_JP,ko_KR,lv_LV,nb_NO,nl_NL,pl_PL,pt_PT,ro_RO,ru_RU,sv_SE,
th_TH,tr_TR,zh_TW,zh_CN,pt_BR,ca_ES,en_UK,sr_RS,sk_SK,sq_AL,et_EE,es_LA,fi_FI,ar_SA,uk_UA';
/***CONFIGURATOR***/

Затем я создал тест с новым пакетом с именем Dan, в котором есть один модуль с именем Pets. Когда я смотрю в системе контроля версий, у меня все еще есть файл для каждого доступного языка в sugarcrm/custom/modulebuilder/packages/Dan/modules/Pets/languages

1 Ответ

0 голосов
/ 14 сентября 2018

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

  1. Убедитесь, что вы сделали резервную копию из вашей конфигурации.php , чтобы у вас был исходный языковой массив, если он вам понадобится.Это важно, даже несмотря на то, что наше изменение будет в другом файле, потому что Sugar может воссоздать config.php автоматически, используя полученный массив, потеряв исходный.

  2. В вашем config_override.php добавленииэта строка:

$sugar_config['languages'] = array('en_us' => 'English (US)');

Помните, что приведенная выше строка сделает 'en_us' единственным доступным языком для этого экземпляра и Studio / etc.теперь должен только создавать файлы en_us.Если это не то решение, которое вам нужно - дайте мне знать, пожалуйста.

РЕДАКТИРОВАТЬ:

Вышеуказанные действия только отключают создание спама для Dropdown Editor.

Если вы также хотите, чтобы Module Builder не создавал никаких языковых файлов, отличных от en_us, я нашел этот - довольно инвазивный - метод выполнения этого:

  1. Создать резервную копию экземпляра, а затем удалить все *.lang.php файлов из каталогов include/ и modules/, , за исключением для en_us.* файлов.В Linux вы можете сделать это с помощью find include modules -name '*.lang.php' -not -name 'en_us.*' -print -delete
  2. Удалить содержимое папки cache/
  3. В Sugar запустить Администрирование -> Восстановить -> Быстрое восстановление и перестройка

Это заставило моего Компоновщика модулей создавать только языковые файлы en_us.

Примечание: Если кто-нибудь когда-либо подумал бы сделать это для любого другогоlanguage, чем en_us, убедитесь, что вы не только сохранили предпочитаемый язык, но и сохранили файлы en_us в дополнение к этому!Предполагается, что эти файлы существуют в Sugar, так как они, например, используются для откатов отсутствующих строк на любом другом языке.Удаление файлов en_us может привести к неожиданным побочным эффектам!

...