✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Twórz wielojęzyczną stronę internetową w PHP za pomocą Laravel Framework

143

Chcesz stworzyć wielojęzyczną stronę internetową w PHP? Wielojęzyczna strona internetowa pomaga zwiększyć liczbę odbiorców z kilku regionów. W tym artykule dowiemy się, jak zbudować wielojęzyczną stronę internetową w PHP przy użyciu Laravel Framework.

Laravel ma wbudowaną funkcję Lokalizacji. Lokalizacja językowa to proces tłumaczenia treści na różne języki. Korzystając z tej wbudowanej funkcji Laravela, możemy dodać obsługę wielu języków do strony Laravel.

W Laravelu możesz łatwo pobrać ciągi w różnych językach, dzięki czemu możesz wspierać wiele języków w aplikacji.

Istnieją dwa sposoby definiowania ciągów tłumaczeniowych w Laravelu – używając skrótów klawiszowych i używając ciągów tłumaczeniowych jako kluczy. Przyjrzyjmy się temu po kolei.

Tłumaczenie Laravel za pomocą skrótów

Aby rozpocząć, powinieneś najpierw znać struktury katalogów używane do tłumaczenia w Laravel.

Załóżmy, że musisz dodać obsługę języka „niemieckiego". Stwórz więc katalog ‘de’ w folderze ‘resources/lang’.

Twórz wielojęzyczną stronę internetową w PHP za pomocą Laravel Framework

Zaleca się używanie nazwy folderu zgodnie z terytorium zgodnie z wartościami ISO. Listę kodów języków znajdziesz tutaj.

Utwórz plik messages.phpw folderze „de”. Ten plik zawiera tablicę łańcuchów z kluczami. Poniżej znajduje się przykład, w którym używamy niemieckiego tłumaczenia angielskiego słowa „welcome”.

<?php
 
return [
    'welcome' => 'Herzlich willkommen',
];

Tutaj „welcome” to klucz zdefiniowany przez użytkownika. Ten klucz będzie używany do pobierania ciągów tłumaczeniowych w języku niemieckim. Możesz dodać dowolną liczbę kluczy w tym pliku. Podczas dodawania kluczy należy używać unikalnych kluczy w tablicy. Zduplikowane klucze spowodują błędne tłumaczenie.

Powyższy proces jest łatwy, jeśli Twoja witryna nie zawiera dużo treści. Ale jeśli Twoja witryna jest dość bogata w treść, utrzymanie unikalnych kluczy będzie trudne w obsłudze. W takich przypadkach przejdź do drugiej opcji przekazywania ciągów tłumaczeniowych jako kluczy.

Używanie ciągów tłumaczeniowych jako kluczy

W tym podejściu nie musisz przekazywać unikalnego klucza. To, co musisz zrobić, to utworzyć plik de.jsonw katalogu „resources/lang”. Następnie w tym pliku JSON przekaż ciąg tłumaczenia jako klucze.

Na przykład chcesz otrzymać niemieckie tłumaczenie angielskiego zdania „Jak się masz?” następnie w de.jsonpliku dodaj poniższą parę.

{
    "How are you?": "Wie geht es dir?"
}

Klucz ciągu tłumaczenia powinien być dokładnie tym, dla którego chcesz tłumaczyć. Będzie to o wiele prostsze, ponieważ w kodzie musisz bezpośrednio przekazać ciąg tłumaczenia.

Ustaw język dla strony Laravel

Kiedy instalujemy Laravela, domyślnym ustawieniem językowym jest ‘en’. Aby zmienić domyślny język, otwórz config/app.phpplik. Znajdź klucz „locale” i ustaw kod języka. W naszym przypadku będzie to 'locale' => 'de'.

Alternatywnie można ustawić środowisko wykonawcze języka za pomocą setLocalemetody Appfasady. W poniższym kodzie ustawiam język w konstruktorze.

use App;
public function __construct() {
    App::setLocale('de');
}

Pobierz ciągi tłumaczenia i zastąp je

Aby pobrać przetłumaczony tekst z plików językowych, Laravel udostępnił metodę pomocniczą ‘„. W poniższym kodzie pobieram ciągi tłumaczeń zarówno z pliku, jak messages.phpi de.jsonz pliku ostrza.

{{ __('messages.welcome') }} //Output, Herzlich willkommen
 
{{ __('How are you?') }} //Output, Wie geht es dir?

W kontrolerze możesz uzyskać ciąg tłumaczenia za pomocą echofunkcji.

echo __('messages.welcome');
echo __('How are you?');

Symbole zastępcze w ciągach tłumaczeniowych

Laravel bada również funkcje tłumaczenia, w których można przekazywać symbole zastępcze w ciągach tłumaczeniowych.

'welcome' => 'Welcome, :name',

Lub w de.josnpliku,

{
    "How are you?": "Wie geht es dir, :name?"
}

Aby zastąpić symbole zastępcze w aplikacji, musimy napisać poniższy kod.

{{ __('messages.welcome', ['name' => 'John']) }}
 
{{ __('How are you?', ['name' => 'John']) }}

Jeśli zapiszemy symbol zastępczy jako ‘:NAME’, wynik będzie ‘JAN’, a dla ‘:Name’ wynik będzie ‘Jan’.

Mam nadzieję, że rozumiesz jak stworzyć wielojęzyczną stronę w PHP z wykorzystaniem frameworka Laravel. Podziel się swoimi przemyśleniami i sugestiami w sekcji komentarzy poniżej.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów