2017-08-30 56 views
0

我用ENG語言創建了laravel的新網站,並且完美地工作,現在我決定添加另一種語言。我在google中搜索並找到了一些解決方案,但對我來說還不夠。在所有解決方案中,只需翻譯幾個字到另一種語言(例如「Hello」=>「Hallo」),這些解決方案適用於界面(UI),在管理面板中使用它就像使用它。 但我試圖找到最好的方式來顯示我的內容(長文本或項目符號列表)在另一種語言。向laravel網站添加其他語言的最佳方式是什麼?

回答

0

我建議你使用每種語言的多個文件;將其按不同的文件分類(即:用戶,錯誤,管理員,...)。無論你最適合什麼。

當然,您可以在文本編輯器或IDE中管理所有這些文件。但是,這將涉及一個過程,可能看起來像:

1 You exporting [language][1] files to some format for 'non technical' people. 
2 You sending this file to translators. 
3 Translator translating. 
4 Translator sending translated file back. 
5 You putting translations back into a file that's accepted by Laravel. 
0

看一看本地化的文檔,你可以在這裏找到https://laravel.com/docs/5.4/localization

本土化的前提是,而不是直接寫你的內容變成查看你將它存儲在一個語言配置文件中,該文件可以根據你想要顯示的語言進行切換。

E.g.

/resources/lang/en/headings.php

return [ 
    'welcome' => 'Welcome to my website!' 
]; 

您的看法:

<h1>{{ __('headings.welcome') }} or @lang('headings.welcome')</h1> 

然後,使用自己的國家代碼創建其他文件夾中的新語言文件,例如/resources/lang/es/headings.php並使用App :: setLocale($ locale);定義使用哪種語言。

+0

不能使用這些方式,因爲源字符串其長文本並不能將長文本存儲爲數組中的鍵。 – FarbodKain

+1

如果你正在談論某個頁面的全部內容,那麼你最好的辦法是將不同語言版本的頁面內容保存在數據庫中,然後使用if(App :: isLocale('country'))來選擇您要顯示的內容版本。 –

相關問題