Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Strona w trzech językach (polski, angielski, niemiecki)
zientek18
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 8.01.2006

Ostrzeżenie: (0%)
-----


Witam Serdecznie!

Zrobiłem stronę w trzech językach:
polski - index.php
angielski - index_en.php
niemiecki - index_de.php

Chciałbym, aby nie robić nowych podstron dla każdego języka, bo jest to czasochłonne i później kłopotliwe przy wprowadzaniu zmian.

Skrypt działał by na zasadzie:
Przykładowo mam podstronę srodek.php i w źródle

{tekst_po_polsku_wyświetlany_tylko_dla_pliku_index.php}
{tekst_po_angielsku_wyświetlany_tylko_dla_pliku_index_en.php}
{tekst_po_niemiecku_wyświetlany_tylko_dla_pliku_index_de.php}

Czy ktoś miał do czynienia z takim skryptem ?
Jak coś takiego zrobić ?

Z góry bardzo dziękuję i proszę o pomoc, będę wdzięczny.
Pozdrawiam i życzę smacznego obiadu i spokojnej niedzieli (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
maciej-01
post
Post #2





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 27.08.2008

Ostrzeżenie: (0%)
-----


hmm.. Dam ci wzorzec skryptu (oprócz zmieniania języków) , bo on jest łatwy (ale trudne jest zmienianie języków) :
Kod
     <?
     setcookie(lang,"");
     switch ($_COOKIE['lang']) {
     case 'pl':
     include("polski.html");
     break;
     case 'de':
     include("niemiecki.html");
     break;
     case 'en':
     include("angielski.html");
     default:
     include("polski.html");
     ?>

coś w tym stylu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Mlodycompany
post
Post #3





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


ja obecnie robie portal na stałych. includuje plik ze zdefiniowanymi stalymi w odpowiednim jezyku a w indexie tylko je echuje:P
Go to the top of the page
+Quote Post
vokiel
post
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Było na forum setki razy:
Wielojęzykowość
wielojęzyczność
Go to the top of the page
+Quote Post
Black-Berry
post
Post #5





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Zobacz sobei jak takie coś może działać w praktyce.

http://www.demo.edicra.pl/lite/index.php

logowanei w prawym górnym rogu.

pozdrawiam

Edit: Ups.. mój kolega usunął opcję wielojęzyczności (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) W każdym razie środek zmienia się a jest tylko jedna strona index.php. Wyobraź sobie że języki działają ;P

Ten post edytował Black-Berry 3.09.2008, 10:12:15
Go to the top of the page
+Quote Post
1010
post
Post #6





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

Ostrzeżenie: (0%)
-----


Ja to robię tak że wszędzie gdzie mam wyświetlić jakiś tekst to robię np print $jezyk['jakis_tekst'] a zmienną dostawiam do jezyki/pl.php i jezyki/de.php itd... I kiedy trzeba zmienić język to tylko include innego pliku i po kłopocie.
Go to the top of the page
+Quote Post
sf
post
Post #7





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

Ostrzeżenie: (0%)
-----


Od tego jest gettext w php. Więc po co wymyślać własne mechanizmy skoro już istnieją zaimplementowane? Do tego są narzędzia, które ułatwiają tłumaczenie plików wynikowych jak np. poedit.

Ten post edytował sf 5.09.2008, 08:39:24
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #8





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




W Symfony przez helper:

  1. <?php
  2. print __('Tekst do tłumaczenia');
  3. ?>

Potem można wyeksportować wszystkie tekty wymagające tłumaczenie do pliku XML a konkretnie standardu XLIFF
Jedna strona jedzie na jednym layoucie (chyba, że dla innego języka musi być inny wygląd, ale wtedy wiadomo - trzeba ręcznie)

Pozdrawiam.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 02:30