![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 136 Pomógł: 0 Dołączył: 2.01.2004 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Witam
Odziedziczyłem zarządzanie pewnym serwisem postawionym na ezp3.6 i jak narazie było ok ale wkońcu poległem. Strona jest w 4 językach. Zlecono mi dodać nową pozycję w menu wraz z nową treścią: poz1 |\ |\ \- poz11 |\ \- poz12 \ - poz13 Zrobiłem to tworząc obiekty typu [Folder] i wszystko ok, ale tekst mam tylko w jednym z 4 języków i chciałbym ukryć te nowe elementy w pozostałych wersjach językowych - czy to wogóle jest możliwe ? Będę wdzięczny za wszelką pomoc -- pozdrawiam Łukasz Wojciechowski -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 215 Pomógł: 0 Dołączył: 28.10.2003 Skąd: - Ostrzeżenie: (0%) ![]() ![]() |
Uzyj only_translated.
Kod {fetch( 'content', 'list', hash( 'parent_node_id', 2, 'only_translated', true() ) )} funkcja zwroci tylko przetlumaczone obiekty dla danego dostepu do strony/jezyka (siteaccess) Ten post edytował Luke 27.09.2005, 10:28:53 -------------------- <span style="font-weight: bold;">Open Source Enterprise Content Management</span>
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 136 Pomógł: 0 Dołączył: 2.01.2004 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedź.
Wiem co napisałeś ale niewiem gdzie to zastosować. Domyślam się, że w szablonie ale czy dobrze się domyślam ? I druga sprawa - ja chciałbym to wyrzucić z menu i to by mnie w zupełności satsyfakcjonowało - czy twoja rada również dotyczy pozycji menu ? -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 215 Pomógł: 0 Dołączył: 28.10.2003 Skąd: - Ostrzeżenie: (0%) ![]() ![]() |
Tak w szablonie. Nie wiem czy domyslnie korzystasz z wygladu "base" czy z wlasnego. Jezeli z "base" to domyslam sie ze chodzi o top menu, wiec zajrzyj do design/base/templates/menu/double_top.tpl albo flat_top.tpl. Poszukaj funkcji fetch i dodaj { ... "only_translated", true() }. Jezeli ktos bedzie przegladal strone po angielsku to zostana wyswietlone tylko przetlumaczone obiekty.
Ten post edytował Luke 27.09.2005, 11:39:02 -------------------- <span style="font-weight: bold;">Open Source Enterprise Content Management</span>
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 136 Pomógł: 0 Dołączył: 2.01.2004 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Dobra - sama edycja to nie problem ale mam problem ze zlokalizowaniem szablonu odpowiedzialnego za wyświetlanie menu.
Czy byłbyś w stanie podpowiedzieć mi jak najłatwiej zlokalizować odpowiedni szablon ? Menu mam z lewej strony i jest to jakiś rodzaj drzewka: ![]() Próbowałem "serczować" w panelu zwroty "dodaj" lub "ulubionych" - nic nie zwraca ![]() pozdrawiam -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 215 Pomógł: 0 Dołączył: 28.10.2003 Skąd: - Ostrzeżenie: (0%) ![]() ![]() |
Ktorej wersji eZ uzywasz? Jezeli 3.6.x to wlacz debug output z opcja List of used templates i Template debug. Mozesz to zrobic z poziomu Panelu po prawej stronie w adminie. Polecam poczytac dokumntacje, bardzo pomaga. http://ez.no/doc
Ten post edytował Luke 28.09.2005, 07:33:43 -------------------- <span style="font-weight: bold;">Open Source Enterprise Content Management</span>
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 136 Pomógł: 0 Dołączył: 2.01.2004 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Ok.
Zidentyfikowałem szablon wyświetlający menu i nadpisałem go swoim. Dane do budowy menu pobierane są w moim przypadku funkcją treemenu(). W między czasie okazało się, że jest wiele innych elementów - nie przetłumaczonych a takich, które mają być widoczne w innych wersjach językowych. W obliczu powyższego oparłem się na nazwie obiektu i na jej podstawie wyświetlam lub nie dany element menu w konkretnych wersjach językowych. - Mało elegancko ale narazie wystarczy - ważne że cel osiągnięty. Dziękuję bardzo za pomoc. Ten post edytował lukaswoj 3.10.2005, 10:03:43 -------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Przyjaciele php.pl Postów: 215 Pomógł: 0 Dołączył: 28.10.2003 Skąd: - Ostrzeżenie: (0%) ![]() ![]() |
Problem polaga na tym ze funkcja treemenu() nie obsluguje parametru "only_translated", mozesz dodac do klasy folder atrybut typu checkbox (only_translated), i na jego podstawie okreslac ktory element powinien byc wyswietlany jako nie przetlumaczony. Bedzie to bardziej eleganckie i elastyczne.
Kod {if $node.object.data_map.only_translated.data_int} {* Tylko przetlumaczone *} {/if} Sprawdzenia dokonasz w petli, w kodzie ktory wyswietla menu. Ten post edytował Luke 4.10.2005, 07:28:28 -------------------- <span style="font-weight: bold;">Open Source Enterprise Content Management</span>
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 136 Pomógł: 0 Dołączył: 2.01.2004 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Jest to jakiś pomysł, ale tak jak pisałem - są elementy nieprzetłumaczone, które powinny być widoczne i są takie co nie powinny więc to sprawy do końca nie rozwiąże.
Na chwilę obecną zostawie tak jak jest. Dzięki za sugestie. -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 18:36 |