Uj locale string felvitele NEM angol anyanyelven

lazly képe

Sziasztok!

Lenne egy olyan gondom, hogy szeretnek par reszen frodithato modon felvinni stringeket, t() vagy locale() modulal. A gondom az, hogy ez a forditasi feluletbe Angol anyanelven kerul be, pedig en magyarul szeretnem felvinni. Bizonyos nagyobb volumenu modulok, pl views, panels, taxonomy kepes arra, hogy ezt magyarul vigye fel, es a forditasi interfaceen mar angolra tudjam visszaforditani. (>2 szamu nyelv van az oldalon)
Hogyan tudnam ezt megtenni? apiban neztem, es van a $langcode nevu parameter, am nem oldotta meg a problemam. Igy probaltam: t('alma',array(),'hu') vagy locale('alma','hu') Mit rontottam el?

Koszi!

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
csg képe

Szerintem félreérted a dolgot, de az is lehet, hogy én értelek félre Téged, úgyhogy először tisztázzuk a kérdést:

Írsz épp egy modult, amiben a szövegeket fordíthatóvá akarod tenni, de nem angol nyelven írnád be őket, hanem magyarul?

Ha erről van szó, akkor ez így nem fog menni, a fordítható szövegeket mindenképpen angolul kell beírni. A $langcode változó az csak arra való, ha nem az éppen használt nyelvre akarod fordítani a szöveget, hanem Te akarod megadni, hogy melyikre. Tehát a példádnál maradva a t('apple', array(), 'hu') akkor is azt adja vissza, hogy "alma", ha angolul nézik az adott oldalt.
(Mellékesen szeretném figyelmedbe ajánlani a drupal kódolási szabványát, ami szerint a függvények paraméterei között szóköz is van.)

Amúgy amennyire én tudom, a drupal 7-es verziójában már lesz rá lehetőség, hogy ne az angol legyen az alapértelmezett nyelve a t() függvénynek.

0
0

--
Csonka Gergely
http://cheppers.com

lazly képe

Szia!

Eloszor is koszonom a valaszod.

Nagyjabol jol erted a helyzetet, azert nem ertem a dolgot, mert ha magyar nyelven letrehozok egy taxonomy termet, esetleg viewsben valamit akkor a translate interfacen megtekintett felvitt stringek kozt jellemzoen az Eredeti szoveg reszen magyarnak konstatalja a szoveget, es az angol ill tovabbi nyelveket kell hozza felvinnem. Ezert gondolom hogy valamilyen lehetoseg van ra.

Udvozlettel: lazly

0
0
drifter képe

Két külön dolog: amit modul kódba írsz, t() függvények közé, és .po file-okkal fordítasz, az gettext rendszert használ, ahol az alapértelmezett nyelv mindig angol lesz.

Ha föltelepíted az i18n modult, és az általa biztosított taxonómia kifejezéseket stb. viszed be, azok az aktuális nyelven fognak elmentődni, és "vissza lehet őket fordítani" angolra.

0
0
lazly képe

Koszi a segitseget, i18n forraskod ill doksiban elmelyedve meglett a megoldas. :) Remelem a drupal7ben mar a t() is alkalmas lesz erre.

Udvozlettel: lazly

0
0
Pasqualle képe

Remelem a drupal7ben mar a t() is alkalmas lesz erre.

nem

0
0
csg képe

Közben én is megnéztem, és elnézést kérek a feljebbi téves információért.

0
0

--
Csonka Gergely
http://cheppers.com

szantog képe

és mi volt az?

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

lazly képe

Hat kicsit specifikus a megoldas, mivel taxonomy forditasokat kellet kiszednem, es a taxonomyban a nevek magyarul vannak eltarolva. (tehat nem altalanos magyar stringrol van szo, de innen mar nincs messze az se, szerintem)

 i18nstrings("taxonomy:term:$parent->tid:name", $parent->name)
Udvozlettel: lazly

0
0