Kezdőoldal » Számítástechnika » Weblapkészítés » Mi a legelegánsabb megoldás...

Mi a legelegánsabb megoldás arra, hogy többnyelvű weboldalt készíts?

Figyelt kérdés

Megbíztak egy ilyen feladattal, és elég kezdő vagyok. Én arra gondoltam, hogy minden oldalnak és aloldalnak elkészítem az angol nyelvű változatát, és a backend mindig azt küldi ki a felhasználónak, amelyik nyelvet választotta. Például az index oldalnak lesz egy angol nyelvű változata is, mondjuk index_EN néven, és ha kiválasztja a USER az angol nyelvet, akkor az aktuális oldal angol változatát kapja meg. Illetve az űtválasztás úgy lenne megoldva, hogy a magyar nyelvű oldalakon a linkek mindig a magyar nyelvű aloldal változatokra mutassanak, az angol változaton meg értelemszerűen az angolra. Viszont néha eléggé bele lehet kavarodni abba, hogy most melyik oldal hova linkel. Ja meg SÜTIkkel gondoltam megjegyeztetni, hogy a felhasználó utoljára melyik nyelvet választotta, és akkor ha legközelebb meglátogatja az oldalt, akkor egy script rögtön átirányítja arra a nyelvre, amin utoljára volt. De ez így nem sok, hogy minden oldalból 2 változat van?


ELőször arra gondoltam, h az összes szöveget elmentem egy JSON file-ba, és mindig az aktuális nyelvnek megfelelőt olvasom be és rendereltetem ki, de az meg baromi erőforrás igényes, és még jobban bele lehet kavarodni. Valszeg ezt a megoldást sehol nem használják a weben, max a játékiparban.


2022. ápr. 30. 18:28
 1/8 anonim ***** válasza:
68%

Miért kéne feltalálnod a kanálban a mélyedést?


[link]

2022. ápr. 30. 18:30
Hasznos számodra ez a válasz?
 2/8 A kérdező kommentje:
Azt nem mondtam, hogy én asp.net MVC-vel dolgozok.
2022. ápr. 30. 19:00
 3/8 anonim ***** válasza:
48%
ASP xDDDDDD
2022. ápr. 30. 19:02
Hasznos számodra ez a válasz?
 4/8 A kérdező kommentje:
Egyébként akkor ez a keretrendszer amit linkeltél is ugyan azt csinálja a háttérben, amit az én első megoldásom? Tehát minden szöveg nyelvenként külön nyelvi fájlban van tárolva, és az oldal fordításakor csak a megfelelő fájlból fordítja be a szövegeket?
2022. ápr. 30. 19:04
 5/8 A kérdező kommentje:
Öhm, mi olyan vicces ebben?:D
2022. ápr. 30. 19:04
 6/8 anonim ***** válasza:
53%

4: gyakorlatilag igen. Azt azért megsúgom, hogy az nem keretrendszer, csak egy modul..


5: például, hogy mikor én középiskolás voltam (nem most volt...), már akkor is röhejes volt az asp, pláne ma.

2022. ápr. 30. 19:10
Hasznos számodra ez a válasz?
 7/8 A kérdező kommentje:

Sajnos én se tartom egy jó megoldásnak, baromi kényelmetlen használni, sokkal gyorsabban meg lehetne írni a backendet PHP-val mondjuk, de a munkahelyemen ezt használják, úgyhogy ezen nem tudok változtatni. Sajnos.

Azt pedig külön köszönöm, hogy felhívtad a figyelmem arra, hogy ez csak egy modul, néha hajlamos vagyok ilyen téren hanyagul fogalmazni.


Én megírtam először egyébként egy ugyan ilyen megoldást, működött is, de asp.net-ben nem annyira könnyű ezt megvalósítani. Kezdjük azzal, hogy a JSON fileból csak osztályt lehet csinálni, ami memóriigényes, de végülis C#-ban minden egy objektum, szóval ezen felül is lehet emelkedni. A második probléma, hogy ezt az osztályt mindig át kell adni a VIEWnak, de előtte inicializálni kell, ami azt jelenti, hogy minden alkalommal mikor betöltesz egy oldalt, akkor lefut a JSON file memóriába való beolvasása, ami megint csak idő.

A körfolyamat az lenne, hogy a felhasználó oldalt vált, akkor a vezérlő létrehoz egy nyelvi objektumot, ami beolvassa a megfelelő JSON filet, amit aztán átad a VIEWnak és azt visszaküldi a felhasználónak. Az én megoldásommal meg rögtön a megfelelő nyelvű nézetet adom vissza. Mondjuk annyi a baj, hogy ha épp űrlap kitöltés közben vált nyelvet, akkor valszeg elvesznek az adatok, de ezt nem tudom, annyira még nem ismerem az adatkötéseket aspben.

2022. ápr. 30. 19:18
 8/8 anonim ***** válasza:
Ami a legjobban bevált? Subdomainen egy másik nyelv.
2022. máj. 3. 19:59
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!