Pogledajte određenu poruku
Staro 19. 12. 2005.   #7
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

mislim da je gettext i malo jednostavne logike primenjene na include fajlove bolje nego guranje texta u bazu, imaces manje dodatnog posla i bolje perfomanse...naravno ovo se odnosi na obicne sajtove, ako pravis CMS koji textove cuva u bazi onda je logicno da ce i prevodi biti tamo...

K'o sto Dinke rece gettext je odlican za textove menija, razne kratke poruke i slicno, jer automatizuje pravljenje language fajlova. Kao sto je vec receno koristis __() funkciju da prikazes text neke poruke, ali glavna prednost ovog pristupa je sto ti kad zavrsis pravljenje strane na default jeziku, pomocu jedne skripte automatski mozes da iscupas sav text svih poruka jer se nalazi u __('..'). Taj skript ti kreira language fajl koji ti lepo spakujes i posaljes prevodiocu na prevodjenje. On to prevede zadrzavsi isti format fajl, ti njegov prevod snimis gde treba i automatski imas poruke na novom jeziku na raspolaganju prostom promenom local setovanja. Nema zezanja da ti rucno svaku poruku unosis u bazu ili tako nesto... ako izmenis neku stranu, samo ponovo pustis batch da pokupi izmene, prevedes ih i to je to...

za vece komade texta je naravno prakticnije odraditi ceo templejt na drugom jeziku, snimiti sve templejte za taj jezik u zaseban dir, i onda kad include-ujes templejt samo kazes:
include(JEZIK_DIR . 'ime_templejta');

gde je JEZIK_DIR putanja direktorijuma za trenutni jezik... ovo je ultra brzo resenje, i vrlo prosto za odrzavanje i rad na prevodjenju...

Istom logikom mozes da odradis i include funkcija koje zavise od jezika, tipa formatiranje datuma, novca i slicno... Naprosto napravis za svaki jezik po jednu biblioteku takvih funkcija i inkludujes ih na isti nacin kao i templejte... Ukoliko se funkcije nece menjati u buducnosti (a posto su takve funkcije obicno vrlo proste, najverovatnije da nece), ovo je mnogo cisce resenje (i malko brze) nego gomila switch-case-ova koji proveravaju trenutni jezik unutar svake bozije funkcije...
ivanhoe je offline   Odgovorite uz citat