Překlad menu.
Zdavím všechny Drupalisty, obracim se na vas s prosbou o radu. Delam na webu, na kterém pojede obsah ve trech jazycich. Mam problem, že se mi nechce prekladat menu. Jinak vse OK. Zkousel jsem kde co, ale nevim si s tim rady. Používam Locale a Content translation. Tedy prekladam prostredi pomoci prefixu. Pomoci I18N překládam obsah. Vse (moduly) nainstalovano a aktivováno. V Multilingual system mam zapnuto Content selection mode:Current language and language neutral. Do sites/default/settings.php mám proměnné, které mají být závislé na jazyku: /**
* Internationalization (i18n):
*/ $conf[‚i18n_variables‘] = array(
// Site configuration
‚site_name‘,
‚site_slogan‘,
‚site_mission‘,
‚site_footer‘,
‚anonymous‘,
// Node help
‚blog_help‘,
‚story_help‘,
// User configuration
‚user_registration_help‘,
‚user_mail_welcome_subject‘,
‚user_mail_welcome_body‘,
‚user_mail_approval_subject‘,
‚user_mail_approval_body‘,
‚user_mail_pass_subject‘,
‚user_mail_pass_body‘,
// Primary and secondary links
‚menu_primary_menu‘,
‚menu_secondary_menu‘,
// Theme settings. This is an ‚all or nothing‘ for each theme
// This is for ‚garland‘ theme, for other theme it would be ‚theme_[themename]_settings‘
//‚theme_garland_settings‘, );.
Pak jsem nastavil prava a nechal zobrazovat jazyky (RU,CS,EN). Menu (primarni) jsem pak nastavil pro jednotlive polozky moznost pro vsechny jazyky. Jednotlive slova z menu jsem prelozil v jazycich. Podotykam znova, ze vsechny preklady jsou plne funkcni. Zkousel jsem i odlogovani, ale porad nic a jsem z toho slusne receno na prasky. Nevite nekdo kde je chyba?
Predem moc dekuji za rady.
Radek
Nedokážu reprodukovat
Nedokážu reprodukovat přesný postup, ale sama mám dvojjazyčný web, kde mi menu normálně funguje, akorát tam nesmíš zapomenuot zašrktnout, jaký jazyk dané menu má a co zobrazovat na českém webu – např. pouze obsah česky nebo i obsah bez určení jazyka.
I18n není žádná slast, nepřeju ti to. Je to naprogramu priorit vývoje Drupalu.
Ok. To jsem uz zkousel.
Ok. To jsem uz zkousel. ruznymi zpusoby:
1. vytvoril jsem menu se dvemi polozkami. Ke kazde jsem priradil all languages. Nyzvy pak prekladam v jazycich. Bez uspechu. 2. vytvoril jsem menu se dvemi polozkami. Ke kazde jsem priradil ruzny jazyk.Zobrazuje se mi ale vsechno.
Kde je chyba?
Radek
i18n a menu?
Podařilo se to nějak vyřešit? Mám úplně stejný problém. Buď docílím toho, že název menu se přeloží a cesta zůstane stejná (což je ěpatně) a nebo zvolím jazyk položky menu, cesty jsou správně, ale menu zobrazuje i položky jiného jazyka, což je opět špatně. Jediné, co mě napadá je, že udělám menu pro každý jazyk zvláš´t, což jsem dělal i kdysi dávno v D5, ale přijde mi to zvláštní – že by na tom byl D6+i18n stejně mizerně jako před lety D5+localizer?
Menu neprekladajte. Nefunguej
Menu neprekladajte. Nefunguej to to ako by malo. Ja som to vzdy rieisl vytvorenim duplciitneho menu, inak boli problemy.
Dotaz
Jak to vyřešit duplicitním menu, když se jedná o PrimaryLinks? Mám stejný problém, PrimaryLinks vůbec nerespektuje nastavení jazyka v jednotlivých položkách a ukazuje vždy všechny položky ve všech jazycích :-( Nevíte někdo co s tím? Díky…
Já to dělám ne překladem
Já to dělám ne překladem položek menu, a nutně ani ne dalším menu pro druhý jazyk, ale vytvořením duplicitních položek pro druhý jazyk (v tom samém menu, konkrétně v Primary links). To je to, co vám nefunguje (že se vám zobrazuje pořád oboje)? Mně to chodí, i když jen na 1 malém webu a s druhým teprve dneska laboruju na lokále, takže ruku do ohně bych za to nedala…
EDIT: Hm blik, tak jsem si konečně všimla :-), že kdybych si v tom $conf[‚i18n_variables‘] odkomentovala i ‚menu_primary_links_source‘, tak si v jiném jazyku můžu nastavit jiný zdroj primárních odkazů. A zdá se zatím, že to funguje.
Přesně tak, popsala jste to
Přesně tak, popsala jste to úplně přesně. Já to taky řeším duplicitními položkamy v menu PrimaryLinks (konkrétní položky pro konkrétní jazyk). V některých tématech mi to funguje, ale ve většině témat se mi zobrazují položky pro všechny jazkyky najendou.
Další metoda jak tu už padlo je vytvořit si několik menu (každé pro jeden jazyk) a v blokách tyto menu umístit do PrimaryLinks a nastavit je pro konkrétní jazyky. Ale opět i toto mi funguje jen v některých tématech. Ve většině tématech není požnost nové menu umístit do PrimaryLinks :-(
No a třetí možnost, řekla
No a třetí možnost, řekla bych, je nastavit v jiném jazyce jiný zdroj primárních odkazů (Menu > Settings); viz EDIT mého předchozího komentáře. Bloky k tomu v tomto případě nejsou třeba.
Super, díky za inspiraci…
Super, díky za inspiraci…
Normalne si vytvoris
Normalne si vytvoris duplicitne prelozene menu(plural) a das kazdemu zobrazenie podla jazyka. A jednoducho v nastaveni blokov ich vlozis do nejakeho regionu. Mozes is na to specialne vytvorit samostatny region pokial mas nevhodnu temu.
Jo to chápu, ale to není to
Jo to chápu, ale to není to co potřebuju, protože já to duplicitní menu nechci vložit do „nějakého“ regionu, ale chci ho přímo jako PrimaryLinks, které je například rozbalovací atd.
Zjistil jsem ještě jednu užitečnou informaci, a to že ten problém s jazyky v PrimaryLinks je problém v Tématu, protože jsou Témata, v kterých to funguje jak má, ale ve většině Témat jazykové volby pro PrimaryLinks nefungují. A zrovna tak jsou Témata, kde jdou libovolná menu vkládat do PrimaryLinks (to je ten Tvůj doporučený postup)a jsou Témata kde jiná menu do PrimaryLinks vkládat prostě nejdou…
nastuduj si najprv nieco
nastuduj si najprv nieco o temach.
Já myslel, že práci s tématy
Já myslel, že práci s tématy mam zmáklou. Co konkrétně o témách máš na mysli na co bych se měl zaměřit? Předem děkuji za správné nasměrování.
Správná témata
Můžete mi prosím kdyžtak dát tipy na témata, v kterých to funguje? Nevíte prosím, jak je na tom Bartik v Drupalu 7? Dekuju moc.
Primary menu
Zkus použít správné názvy proměnných, potom můžeš nastavi pro každý jazyk jiné primární menu.
// Primary and secondary links
‚menu_primary_links_source‘,
‚menu_secondary_links_source‘,
‚menu_default_node_menu‘,
Jednoduchý a funkční překlad položek menu
return l(t($link[‚title‘]), $link[‚href‘], $link[‚options‘]); } Pak uz jen stačí využít možností funkce t() a v admin/build/translate/search vyledat požadovaný text, navrhnout překlady pro všechny dostupné jazyky a je to. Elegantní a funkční. Viz: https://api.drupal.org/…tem_link/6.x
Oprava překlepu
si nejsem uplnej jistej jak
si nejsem uplnej jistej jak to potom bude s cache…