Üdv!
Egy egyedi teszt modulba szépen betettem a fordításokat:
# .module ... $item['...'] = array( 'title' => t('Menu item'), 'description' => t('Menu item'), ...
Az oldalon nyelvváltáskor minden működik, kivéve a .module fájlban megadott fordítások, azaz a menüpontok nem váltanak át. Maradnak magyar nyelvűek.
Miért nem vált át a menüben a kiválasztott nyelvre?
Az admin felületen megnéztem, minden menünek megvan a fordítása. Csak nem vált át.
Drupal verzió:
Fórum:
Ürítsd a
gyorstárt.
Üdv!
Dudás József
kivéve a .module fájlban
kivéve a .module fájlban megadott fordítások
Vagy rosszul fogalmazol, vagy rosszul csinálsz valamit.
A .module fájlban a t() függvényben mindig angol szövegnek kell lennie. Ezt az angolt szöveget az admin felületen tudod lefordítani más nyelvekre.
Fordítást még a .po fájlban lehet megadni, amit vagy modulbekapcsoláskor vagy importálva lehet hozzáadni a fordításokhoz.
...mit tudok: http://web.termuves.hu
csak angol
Ott kezdődik, hogy a t() függvény csak angolról fordít. Szóval magyarul, urduul nem írunk bele.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
cache, t()
* A cache törlés megvolt természetesen. De mégsem működik.
* A t() fv-ben ahogy a példában is van, angolul írtam a szöveget pl.: 'Menu item'! Tehát sehol nem használtam magyar nyelvű szöveget!!
Érdekes módon csak a menük nem fordulnak le. A modulban levő más szövegek lefordulnak! Tehát csak a .module fájlban definiált menük nem váltanak át.
Ezért nem is értem... :o
Menünél nem kell a t()!
Menünél nem kell a t()!
http://api.drupal.org/api/drupal/modules!system!system.api.php/function/...
(és a watchdog-ba se rakjál változó szövegeket, mert hamar megtelik az adatbázisod :))
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
menü
Akkor a hook_menu() menüket hogy kellene fordítani?
http://api.drupal.org/api/drupal/includes!menu.inc/function/_menu_link_t...
Ezt kellene használni? Hogyan is?
Rossz a kérdés
„Akkor a hook_menu() menüket hogy kellene fordítani?”
Ugyan úgy, ahogy a többi kódból jövő szöveget.
A kérdés az, hogy hogyan kell fordíthatóvá tenni?
A válasz pedig az, hogy sehogy, mert fordíthatóvá van már téve.
"title callback": Function to generate the title; defaults to t(). If you require only the raw string to be output, set this to FALSE.
A probléma ott van, hogy mivel átkergetted a t()-n, a Drupal meg ezt a szöveget kergette át a t()-n, ezért a magyar oldalon a magyar szöveg lett az angol, amit aztán begyorstárazott és úgy maradt.
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
hogyan
hogyan kellett volna használni?
nem egészen értem.
így
simán, csak t() nélkül adod meg őket, mert az érték amit megadsz majd még átmegy egy title callbacken (mint ahogy van access callback is, csak ez a címet generálja) ami alapértelmezetten a t() függvény. azért van ez, hogy megadhass te másik title callbacket is, mert lehet hogy olyan menü itemet akarsz, ami mondjuk mindig a 'Hello %username', akkor nem a t() lesz a title callback, hanem irsz rá saját függvényt. csak simán fordításhoz nem kell.
tehát így:
-
clear: both;
fordítás
Most ez van a felületfordításban pl.:
De a t('Menu item') miatt az eredeti is a magyar és a lefordított is a magyar. Ha jól értem.
ok
Ok, köszönöm.
Működik.