Home > Software engineering >  How to translate strings well in Laravel?
How to translate strings well in Laravel?

Time:04-29

I want to translate product description in json. In my product.view I shows the variables.

<span>{{ __($product->description) }}</span>
<span>{{ __($product->beam) }}</span>

Here i have translation in json

 "Brama przesuwana wykonana na szynie jezdnej 80x80 mm. Obramowanie oraz przeciwwaga bramy wykonane są z profili 60x40 mm. Wypełnienie bramy to profil 80x20 mm w odstępach 80 mm. Istnieje możliwość wstawienia różnych kombinacji kolorystycznych wypełnienia. Słupy montażowe w komplecie - profil 80x80 mm. Brama wyposażona w niezbędne akcesoria montażowe w zależności od wersji.": "Posuvná brána je vyrobena na kolejnici 80x80 mm. Rám a protizávaží  jsou vyrobeny z profilů 60x40 mm. Brána je vyplněna profilem 80x20 mm v rozestupech 80 mm. Výplně brány je možné různě barevně kombinovat. Montážní sloupy jsou z profilů 80x80 mm. Brána je vybavena potřebným montážním příslušenstvím v závislosti na její verzi.",
   "Czarna stal Warstwa cynku Warstwa poliestru": "Černá ocel. Zinková vrstva. Polyesterová vrstva",

Here is the look of product page. Product beam is well translated. My question is why product description are not being translated. This happens in all my product examples. Product view

CodePudding user response:

Here i Got It -

<span>{{ __(JSON.stringify($product->description)) }}</span>

CodePudding user response:

Convert JSON to Array using below code.

$data = json_decode($your_json_string, TRUE);

Then you forEach and translate key value using below code.

 @foreach ($users as $user)
    <p>This is user {{ __($user) }}</p>
@endforeach

if query feel free to ask.

  • Related