Több nyelvű honlap készítése
Sziasztok!
Kétnyelvű honlapot szeretnék készíteni, kétnyelvű adatbázissal. A jelenlegi tudásom – úgy érzem - elegendő az elkészítéséhez, de az optimális módon való elkészítéséhez már szükségem lenne némi útmutatásra. Ha tudtok, kérlek segítsetek az irányelvek terén. Nagyon fontos szempont a későbbi bővíthetőség, a kezdeti kétnyelvű honlapból hosszú távon akár ötnyelvű honlap is lehet.
1. Szerintetek mi a jobb? Nyelvenként külön könyvtárba tenni a honlapokat, vagy minden oldal / aloldal tartalmazzon feltételes elágazásokat és így jelenítse meg a választott nyelven a menüpontokat és a tartalmat. Talán az első módszer áttekinthetőbb lesz hosszútávon…
2. Az adatbázis terén csak a szükséges mezők legyenek többnyelvűek, vagy inkább legyen egy-egy adatbázis minden nyelven? Itt is az első megoldást tartanám jobbnak, és feltöltés szempontjából felhasználóbarátabbnak.
3. Megoldható valahogy, hogy aki a .com-ot hívja be az angolul, míg aki a .hu-t az magyarul lássa a honlapot alap esetben? (Természetesen a két domain név egy tárhelyre mutat.)
Várom a javaslataitokat.
■ Kétnyelvű honlapot szeretnék készíteni, kétnyelvű adatbázissal. A jelenlegi tudásom – úgy érzem - elegendő az elkészítéséhez, de az optimális módon való elkészítéséhez már szükségem lenne némi útmutatásra. Ha tudtok, kérlek segítsetek az irányelvek terén. Nagyon fontos szempont a későbbi bővíthetőség, a kezdeti kétnyelvű honlapból hosszú távon akár ötnyelvű honlap is lehet.
1. Szerintetek mi a jobb? Nyelvenként külön könyvtárba tenni a honlapokat, vagy minden oldal / aloldal tartalmazzon feltételes elágazásokat és így jelenítse meg a választott nyelven a menüpontokat és a tartalmat. Talán az első módszer áttekinthetőbb lesz hosszútávon…
2. Az adatbázis terén csak a szükséges mezők legyenek többnyelvűek, vagy inkább legyen egy-egy adatbázis minden nyelven? Itt is az első megoldást tartanám jobbnak, és feltöltés szempontjából felhasználóbarátabbnak.
3. Megoldható valahogy, hogy aki a .com-ot hívja be az angolul, míg aki a .hu-t az magyarul lássa a honlapot alap esetben? (Természetesen a két domain név egy tárhelyre mutat.)
Várom a javaslataitokat.
először keress
http://weblabor.hu/blogmarkok/13736
ha ez nem elég, akkor keress tovább, mert jópárszor felmerült már.
Többnyelvű oldal
A tmával kapcsolatban a tutorial.hu-n publikáltam egy automatikus (és manuális) nyelvválasztást megvalósító scriptet, amit aztán BlackY kicsit kiegészített (időközben én is rájöttem azon dolgokra, amit BlackY kifogásolt a script-emben és ha lesz időm írok egy javított változatot - bár BalckY megoldása nem rossz, nekem nem fekszik és nem egészen úgy használom a modul-t ahogy ő leírja ...)
inkább darabolni
Ha szerkeszthetővé akarod tenni a nyelveket, én azt javaslom, hogy szerezz be egy xml2array és egy array2xml function-párost, és írj hozzá parsert. Mármint XML-ben töltheti fel a user a nyelvi fájl, és beparsolod include-olható php-vá. Aztán az XML kezeléséhez meg írhatsz egyszerű programot, ha akarsz, amit aztán N+1 projektben használhatsz. Én éppen efelé nézelődök. Ehhez meg akár desktop alkalmazást is lehet csinálni, mert XML-t szinte minden programnyelvben egyszerűen lehet kezelni.
Re
Egyébként most hogy XML-ben kell fogadni és küldeni az adatokat a jelenlegi munkámnál nagyon rákattantam a dologra, főként az általad is említett platformfüggetlen adattárolás miatt.
többnyelvű weblapon link
typo3 ezt az alábbi módon kezeli
Azt, hogy mindezt a saját rendszeredben miként valósítod meg, az a te dolgod...
köszi
gyorsítótár
A kérdésem annyi hogy megéri-e fordítói gyorstárat (pl APC) használni a nyelvi file-ok alkalmazásánál? Eddig a nyelvválasztáshoz a nyelvi file-ok alkalmazását ismertem, amelynek beemelése sima pl. include(hungarian.php) hívással történik és ahol a hungarian.php fileban define-nal vannak meghatározva az adott stringek. Schlossnagle könyvében (PHP fejlesztése felsôfokon) azt ajánlja hogy define helyett konstans osztályállandókban tároljuk a globális változókat.
A weboldal nem nagy forgalmú, hobbi oldal.
köszönöm a válaszokat elôre is
bla
Szerintem
Nagy forgalmú oldalaknál érdemes bevezetni Gettextet vagy hasonló megoldást, ilyenkor viszont szinte kötelező saját blokk függvényt Írni Smarty-hoz, ha azt használsz. Így igazán kényelmes a dolog szerintem. Ráadásul a forgÍtó motort is könnyedén cserélgetheted Így...
Képzelj el egy ilyen sort Smarty-ban:
Igazán egyszerű, nemde? Még a nyelvet sem kell kiválasztanod, mert azt is a függvényed választja ki mondjuk a subdomain alapján vagy a Gettext konfigja alapján.
Különben szerintem ha a Redis elterjed, kiváló eszköz lesz fordÍtások tárolására és visszatérÍtésére.
+1
- ha vmi apróbb szöveg változik, vagy helyesírási hiba került javításra, akkor a fordítóknak többször le kell fordítani ugyanazt vagy hasonlót
- a fordítás lassan megy, mert nem az van, hogy egy szöveges fájlt kell szerkeszteni, hanem folyamatosan kattintgatni kell az admin felületen, majd beírni a fordítást (ezen lehetne segíteni, ha írnék egy import/export funkciót, de annyira nem volt sok a fordítandó, hogy ezzel érdemes legyen bajlódni)
A hibaüzenetek fordítása szokott még gondot okozni, de amióta van __comment__ lehetőség, azzal se nagyon volt gond. A fordítók munkáját segíti:
- __comment__ -ben megadott szöveg
- készül "mentés" arról az oldalról, ahol először előfordult az adott szöveg, és ezt egy kattintással betölthetik.
- láthatják, hogy a többi nyelvre a másik fordító hogyan fordította le. Ez abban az esetben jön jól, amikor pl magyarul nagyjából tudó, de orosz ember fordít nekünk oroszra, aki tud angolul is. Amióta ez bevezetésre került, még egyszer sem írt, hogy nem egészen érti, mit is akarunk ott "mondani".