Autor Zpráva
kap
Profil *
Potřeboval bych poradit, jak udělat multijazyčnost.
Napadlo mě dát všechny texty do proměnných, vytvořit dva soubory se všemi proměnnými a pak pomocí require připojit jeden nebo druhý soubor. Nebude to ale moc zatěžeovat nebo prodlužovat běh skriptu, když tam bude kvůli tomuto třeba 50 proměnných?
Alphard
Profil
50 proměnných není problém
dejte to do vhodně pojmenovaných polí, nebo se to v tom nikdo nevyzná
fuckin
Profil
obvykle se na toto pouzivaji konstanty.
Nox
Profil
fuckin
To nevím, to by bylo hodně konstant, těch definů... asi by to s nimi bylo o něco rychlejší, ale i tak na běžném webu v měřítku tak malém, že to nebude hrát roli. A na větším webu je důležitá také jednoduchost správy/editace, což bych viděl u pole větší

kap
Mít to v poli bych rozhodně neviděl nijak náročné, myslím že není problém to použít

Zrovna jsem se díval, jak to mají ve wordpressu a tam je to značně podivně
#: wp-admin/admin-ajax.php:307
#: wp-admin/admin-ajax.php:360
#: wp-admin/includes/taxonomy.php:119
msgid "You did not enter a category name."
msgstr "Nezadán název rubriky."
atd....
Aesir
Profil
Nox:
Zrovna jsem se díval, jak to mají ve wordpressu a tam je to značně podivně

To vypadá jako gettext, ale na něm není nic podivného, dokonce ja na to dělaný :)
Mastodont
Profil
Jednou z možností je gettext, akorát tam je třeba připravit soubory s překlady. PO formát jsem překládal třeba pro Operu a moc se mi to nelíbilo.
Druhou možností jsou pole, nejlépe dělená do modulů (menší počet položek v jednom souboru) a ukládat samozřejmě serializovaně.
Aesir
Profil
Jinak ještě k původnímu tématu - je potřeba už ve fázi návrhu si říct, zda to co budete překládat (uvažuji webovou stránku) má být jazykově symetrická, či nikoliv.

Jazykově symetrická znamená cca to, že každý (statický) prvek na webu má sve mutlijazykové variatny (URL, článek, slogan, ...). Jazykově nesymetrický znamená, že budete mít přeložené jen některé fráze, články, apod. Považujte to za zjedodušenou definici.

U jazykově nesymetrického webu bych volil buď gettext nebo jiné podobné metody (zmíněné pole, ...). U symetrického webu už to chce zamyslet se nad návrhem úložiště (databáze) a řešit to tam.
Mastodont
Profil
Aesir
Proč raději nemluvit o vícejazyčném GUI a vícejazyčném obsahu?
Aesir
Profil
Aesir:
Proč raději nemluvit o vícejazyčném GUI a vícejazyčném obsahu?

Protože to nutně nemusí, z mého pohledu, znamenat to samé :)
Ale myšlenka je doufám jasná, nazývat už se to může jakkoliv.
Mastodont
Profil
Ano, nemusí, ale ve většině případů znamená.

U vícejazyčného obsahu je totiž naprosto normální, že web je kompletní ve výchozím jazyku, zatímco překlady do jiných jazyků zahrnují jen část obsahu - typické to je u firemních webů, kde třeba v češtině je vše, v angličtině většina a ve francouzštině jen základní údaje.

Oproti tomu GUI je jazykově celistvé vždy, nevzpomínám si, že bych narazil třeba na web s nabídkou "Domů - Výrobky - Prodejny - Search" ... tam pokud je GUI přeloženo, tak úplně. (Výjimky jsou jasným důkazem amatérismu.)
Aesir
Profil
Mastodont:
A to je právě věcí pohledu, váš pohled je asi spíše na hotovou stránku, kde je GUI bezesporu dominantou, já se na to koukám z pohledu návrhu aplikace, kde mne GUI ani obsah nezajímá :)
Ale opravdu bych tu neřešil názvosloví, nechť tomu každý říká jak chce, hlavně, že je jasné, o co jde.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0