Honestly, I think your translation project is doomed. Itâs very very complicated. All I use is simple âFind in filesâ to look at the contents of PHP files, but then you have to understand where that code is being used to then try and translate. Itâs crazy to try and change the product in hundreds of places.
You can do the simple Module rename and just leave it there. Then see if you find any screen that really needs a change and try to figure out in which file you can translate.
But I donât think the idea of calling something âAccountsâ that is not the actual âAccountsâ module has any future. That sounds like a really bad idea, sorry. I wish I could tell you different things, but I would be misleading you.
This is a very flexible, extensible and configurable product - but definitely not in the way you have in mindâŚ
I have two type of people I have to do with. Customers (Accounts Module) and Couriers (Contacts Module). If I get the translation then I can use the Suite to maintain all information separately and use other Modules like Campaigns, Maps, Invoices with the default set upâŚ
I made a Test: I translated almost all strings âAccountsâ, âAccountâ, âaccountsâ, âaccountâ into âCouriersâ,âCourierâ,âcouriersâ, âcourierâ but I think I got confused with some Modules for Example the Module âEmailâ who has a lot of strings âAccountsââŚ
Then I got it installed but there are some problems⌠I can see my translated Module âCouriersâ but some labels are not translated.
Listen - there are 45 replies in this conversation, thatâs enough for me, nothing personal, I just need to do my work.
I gave you a link to an article on the custom folder, it has nothing to do with custom modules. Go read that article. If you donât understand, search Google, you will find many things about it. Good luck.
sorry but your answer does not give me a solution as I want to build a Module âCouriersâ where I can put Information of People inside, run Campaigns, emails, invoices, maps and so on. I tried to make it with Module Builder but then I could not put the Couriers into a Target List to make a Campaign.
I tried this solution. I downloaded the en_GB.zip language pack, I renamed the words strings âAccountsâ into âCouriersâ and the words âContactsâ into âAccountsâ. I uploaded the new custom language pack and it seems to work. Only some words âAccountsâ and âContactsâ in the popup windows and in the invoices module are not renamed. So I thought about what you wrote:
âAll I use is simple âFind in filesâ to look at the contents of PHP files, but then you have to understand where that code is being used to then try and translate. Itâs crazy to try and change the product in hundreds of places.â
Could you please tell me how you find where the words are located? I mean I know only the âInspect Elementâ function on Firefox Browser.
Your attempt with the en-GB language pack has this problem: when there is an upgrade, some labels will be changed by SalesAgility. These will come in files which will override the ones you altered. The same goes for the language packs: new SuiteCRM version, new Pack comes out, you upgrade the pack, lose your values. If you donât upgrade the pack, there will be missing labels which might cause the app to break.
Doing the changes in the custom files, you only change the labels you need, the rest of the labels gets picked up from itâs original location. So the chances for these problems are much, much lower.
About what you ask, how to find where a certain label is. There is no easy way, nor a certain way. Normally I just look at the screen (or the inspector window), look for a string that looks specific to that string, that shouldnât appear anywhere else, and try a âfind in Filesâ (or a grep, in Linux) to see where that appears. Sometimes you get many labels and itâs hard to know which one you should be changing.
Assuming that the Module âAccountsâ has a lot of relationships with other Modules, I could create these Files as example:
./custom/Extension/modules/Accounts/Ext/Language/en_GB.lang.php
./custom/Extension/modules/Cases/Ext/Language/en_GB.lang.php
./custom/Extension/modules/Contacts/Ext/Language/en_GB.lang.php
./custom/Extension/modules/Leads/Ext/Language/en_GB.lang.php
./custom/Extension/modules/Opportunities/Ext/Language/en_GB.lang.php
/⌠and so on for all ModulesâŚ
and after that I will write inside the en_GB.lang.php these values as example:
I reinstalled the SuiteCRM7.9.7 on my localhost
I installed the en_GB.lang.zip language pack
I went into the folder ./custom/Extension/modules/ and I found these folders:
I created new en_GB.lang.php files. Here an example:
I put the en_GB.lang.php files in the respective directories /custom/Extension/modules//Ext/Language/
I restarted apache and mysql
I deleted the cache on my browser
I made a login chosing the English (US) because if I selected the English (United Kingdom) I got a white blank page. So I logged in with the English (US) Language, made a quick and rebuild.
I logged out and I deleted the cache of my browser
I tried to login with the English (United Kingdom) but as I said I became a white blank page.
Do not know if it is a problem of how I wrote the code in the en_GB.lang.php files or if I made mistakes following the instruction.
The blank page should be a PHP Fatal error caused by a missing apostrophe or semicolon or bracket. The php_errors.log should tell you exactly what it is.
I checked my log errors and there was some writing errors in the php files. After I corrected them I could log in as usual.
I made some tests:
I unzipped the en_GB.lang.zip file and I went to \en-GB\modules\Accounts. I opened the file en_GB.lang.php and I searched all Labels having the words âAccountsâ, âAccountâ, âaccountsâ, âaccountâ, âContactsâ, âContactâ, âcontactsâ, âcontactâ. I put them in a new file called en_GB.lang.php and I renamed them. Here the code of it:
I pasted it into suitecrm797\custom\Extension\modules\Accounts\Ext\language. I made a quick and repair that generated the same files into suitecrm797\custom\modules\Accounts\Ext\Language. I logged out, deleted the browser cache. Logged in with the English (United Kingdom) language. and I could see some changes in the module Account for example âCreate Courrierâ and so on.
Now the question: How can I change the âCreate Accountâ word in the Quick create dropdown menu on the top bar? I see in the \htdocs\suitecrm797\custom\modules only these folders:
That label is called LBL_QUICK_ACCOUNT and itâs in application folder, not a module folder.
Use some âfind in filesâ program (on Windows, I suggest Notepad++) to find more instances of the Account word. you have only started to scratch the surface of your taskâŚ
You can use the forumâs âcodeâ tags to paste PHP without losing the brackets.
Although I am doing my best to help, I think your efforts are misguided and condemned to failure. That was for one language. Now you tell me you want to do this for several languages?
I think I will only rename the language pack as I need a complete translation of the SuiteCRM with all labels (Systemâs Labels and Moduleâs labels too).
If there will be an upgrade I will check it before to install and the same for an upgrade of the language pack.