menüből készült blokk neve fordítható?

szt képe

Sziasztok!
Csináltam egy menüt (tehát az "Elsődleges linkek", "Másodlagos linkek" és "Navigáció" mellé egy negyediket, "Tevékenységek" néven). Abba felvettem menüpontokat - angol és magyar nyelvűeket. Blokk-ként elhelyeztem az oldalon. Szuperül működik minden, nyelvváltáskor is kiváló.
Viszont a menü neve ("Tevékenységek", ami tehát az oldalon a blokk tetején látszik), szóval a menü neve úgy tűnik, hogy nem fordítható le. A "Felület fordítása" menüpontban meg se jelenik.
(Próbáltam a multiblock modult (http://drupal.org/project/multiblock), azzal az a gondom, hogy a duplikált blokkban mindkét nyelv menüpontjai benne vannak.)
Van-e erre valami megoldás?
(Azt hiszem, itt erről volt szó: http://drupal.org/node/177739 , nem tudom, hogy lett-e valami megoldás azóta)
Köszi mindenkinek a tippeket!

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
aboros képe

sminkeld a blokkodat egy külön tpl.php -ban és kergesd át a címét egy t() függvényen. máris fordítható lesz. angol címet adj neki a felületen és azt fordítgassad majd a többi nyelvre a karaktersorozatok kezelésénél.

0
0

-
clear: both;

szt képe

...de légyszi tudnál egy linket dobni, hogy ezt hogyan kell:
"sminkeld a blokkodat egy külön tpl.php-ban".
Lehet angol is.
Értek valamicskét a php-hoz, de egyelőre főleg csak kattintgattam a Drupalt...
Az átkergetés meg a többi már menni fog, olyat már csináltam. :)
Köszi!

0
0
aboros képe

alapvetően mindent itt találsz a sminkelésről:
http://drupal.org/theme-guide/6

tulajdonképpen arról van szó, hogy az eredeti block.tpl.php -t saját sminkedben újra megvalósíthatod, sőt ahogy a tartalomtípusoknál a node.tpl.php -t ezt is alkalmazhatod csupán a nevének megválasztásával egy adott blokkra.
tehát a block-[module]-[delta].tpl.php módon. például a user modul által létrehozott '0' deltájú blokk, ami a belépés blokk külön sminkelhető egy block-user-0.tpl.php fileban.

0
0

-
clear: both;

szt képe

köszi ;)

0
0
aboros képe

akkor az lenne az igazán tuditti, ha leírnád ide, hogy pontosan mit és hogyan csinálntál, hogy megoldjad a témában szereplő problémát. így a jövőben érkezők megtalálhatják a megoldást a kereső használatával, amitől több energiánk marad új kérdések megválaszolására.

0
0

-
clear: both;

szt képe

Igazából aboros megadta a megoldást, de azért leírom részletesen, hogy én hogy csináltam:

1.
A smink könyvtárában lévő block.tpl.php fájlról (ami alapesetben az összes blokkot generálja) készítettem egy block-menu-menu-tevekenysegeink.tpl.php nevű másolatot ugyanide.
Egy kicsit bajban voltam, hogy mi legyen az új fájl neve, ami a fentiek szerint block-[module]-[delta].tpl.php formátumú, csakhogy honnan tudhatja a magamfajta kezdő, hogy mi a [module] és a [delta] értéke? Biztos egyszerűbben is lehet, de én belekukkantottam az adatbázisomba, és ott a blocks nevű táblából ki is lehet puskázni az adatokat. Eme tábla sorai az összes blokkról szolgáltatnak adatokat: a region oszlopban lévő érték mutatja, hogy melyik régióba tettük a blokkokat (left, right, footer stb.), és ha sikerült kitalálnunk, hogy melyik a mi modulunk sora, akkor a module és delta oszlopban lévő értékeket kell a [module] és [delta] helyére helyettesíteni. Szóval így lett nekem block-menu-menu-tevekenysegeink.tpl.php.
A táblából az is látszik, hogy a delta nem mindig 0,1,2 stb. értékű szám, hanem lehet text is (pl az én esetemben: "menu-tevekenysegeink", vagy az elsődleges linkeknek "primary-links").
Egy kis angol info ehhez: http://drupal.org/node/104319

2.
Az eredeti block.tpl.php fájlban lévő kódot:

<div class="defaultblock">
   <h2><?php print $block->subject; ?></h2><!--block title-->
   <div class="blockcontent"><?php print $block->content; ?></div>
</div>

az új block-menu-menu-tevekenysegeink.tpl.php fájlomban módosítottam erre:

<div class="defaultblock">
   <h2><?php print t($block->subject); ?></h2><!--block title-->
   <div class="blockcontent"><?php print $block->content; ?></div>
</div>

Tehát csak bekerült a változó a t() függvénybe, amit már valóban könnyedén lehet lokalizálni.

3.
A Drupalban az angol nyelv az alapértelmezett (és kiirthatalan), szóval úgy járunk a legjobban, ha fordítás előtt a t() függvényekbe angol szöveg kerül. Én is átírtam a menü nevét a menüadminisztrációban angolra, hogy aztán magyarra fordíthassam...

4.
...az alábbi helyen: admin/build/translate/search.
Jelen esetben a "Beépített felület" szövegeiben kell keresni az angol menünévre, majd szerkesztés, fordítás magyarra és kész.

0
0