Skocz do zawartości

Witamy na polskim forum Contao
Zarejestruj się teraz, aby skorzystać ze wszystkich funkcji forum. Kiedy się zalogujesz, będziesz mógł tworzyć tematy, pisać posty, rozdawać punkty reputacji, korzystać z prywatnych wiadomości i zarządzać swoim profilem. Jeśli posiadasz już konto, zaloguj się - w przeciwnym wypadku zarejestruj się już teraz!
Zdjęcie

Catalog Navigation


  • Zaloguj się, aby dodać odpowiedź
2 odpowiedzi w tym temacie

#1
lakitu

lakitu

    Nowy na forum

  • Zarejestrowani
  • Pip
  • 6 postów
Witam,
nie wiem czy dobry dział wybrałem, z góry więc przepraszam.

Mam problem, z którym nie mogę sobie poradzić. Mianowicie chodzi o to, żeby częsciowo zmienić szablon nav_default.tpl, który u mnie odpowiedzialny jest za wyświetlanie drzewa kategorii w module Catalog Navigation. Standardowo drzewo tworzy się tak, że w pętli tworzą się poziomy menu w tagach ul oraz li. Nie jest mi to na rękę, ponieważ w szablonie mam zadeklarowane divy, a żeby było trudniej każdy z nich wygląda inaczej. Chcę żeby kategorie główne były we własnych divach (ponieważ mają inne tła buttonów), a subkategorie tak jak do tej pory - tworzone automatycznie z catalogu.

Zależy mi jeszcze na tym, aby kliknięcię na główne kategorie rozwijało drzewo subkategorii, a nie wchodziło w wybraną kategorię główną - jak to zrobić? (na początek możemy zrezygnować z rozwijanego menu mootools)

Probowałem czegoś takiego, żeby tworzyć własny szablon z zadeklarowanymi divami (wg własnych potrzeb) i podczepianiem do niego subkategorii z mod_catalognavigation. Niestety nie wiem jak odzielić subkategorie jednej kategorii od drugiej (nawet przy tworzeniu osobnych modułów, nie wiem jak podczepić do danego modułu subkategorie jednej kategorii)

Objaśnię to na kodzie źrodłowym:
Na razie wygląda to tak (kategorie będą stałe, więc można je statycznie przypisać, subkategorie są zmienne - tworzą się, jeśli w danej kategorii z taksonomii znajduje się jakiś item):
<ul class="level_1">
	<li class="submenu first">
		<a href="strona/kategoria/subkategoria_1.html" class="submenu first">Kategoria główna 1</a></li>
		<ul class="level_2">
			<li class="first"><a href="strona/kategoria/subkategoria_1.1.html" class="first">Subkategoria1</a></li>
			<li><a href="strona/kategoria/subkategoria_2.1.html" >Subkategoria2</a></li>
			<li><a href="strona/kategoria/subkategoria_3.1.html" >Subkategoria3</a></li>
			<li class="last"><a href="strona/kategoria/subkategoria_4.1.html"  class="last">Subkategoria4</a></li>
		</ul>
	</li>
	<li class="submenu last"><a href="strona/kategoria/subkategoria_2.html" class="submenu last">Kategoria główna 2</a></li>
		<ul class="level_2">
			<li class="first"><a href="strona/kategoria/subkategoria_2.1.html" class="first">Subkategoria1</a></li>
			<li><a href="strona/kategoria/subkategoria_2.2.html" >Subkategoria2</a></li>
			<li><a href="strona/kategoria/subkategoria_2.3.html" >Subkategoria3</a></li>
			<li class="last"><a href="strona/kategoria/subkategoria_2.4.html"  class="last">Subkategoria4</a></li>
		</ul>
	</li>
</ul>
A chcę żeby wyglądało tak:
<div class="menu_0">
		<div class="cat">
			<a href="strona/kategoria/subkategoria_1.html" class="submenu first">Kategoria główna 1</a>
		</div>
	</div>
	<div class="submenu_0">
		<li class="first"><a href="strona/kategoria/subkategoria_1.1.html" class="first">Subkategoria1</a></li>
		<li><a href="strona/kategoria/subkategoria_2.1.html" >Subkategoria2</a></li>
		<li><a href="strona/kategoria/subkategoria_3.1.html" >Subkategoria3</a></li>
		<li class="last"><a href="strona/kategoria/subkategoria_4.1.html"  class="last">Subkategoria4</a></li>
	</div>
	<div class="menu_1">
		<div class="cat">
			<a href="strona/kategoria/subkategoria_2.html" class="submenu last">Kategoria główna 2</a></li>
		</div>
	</div>
	<div class="submenu_1">
		<li class="first"><a href="strona/kategoria/subkategoria_2.1.html" class="first">Subkategoria1</a></li>
		<li><a href="strona/kategoria/subkategoria_2.2.html" >Subkategoria2</a></li>
		<li><a href="strona/kategoria/subkategoria_2.3.html" >Subkategoria3</a></li>
		<li class="last"><a href="strona/kategoria/subkategoria_2.4.html"  class="last">Subkategoria4</a></li>
	</div>

  • 0

#2
qrczak

qrczak

    Ekspert

  • Zarejestrowani
  • PipPipPipPipPip
  • 415 postów
  • LokalizacjaŻuławy
Po pierwsze w tym Twoim kodzie chyba brakuje czegoś bo
  • powstawiałeś a
      brakuje :D
      A po drugie jak chcesz żeby kolejne poziomy menu wyglądały inaczej to użyj czegoś takiego w templatce:

      <?php if ($this->level == 'level_1'): ?>
         <div class="menu_1">
            <div class="cat">
      <a href="<?php echo $item['href']; ?>" title="<?php echo $item['pageTitle'] ? $item['pageTitle'] : $item['title']; ?>"  class="submenu last" ><?php echo $item['link']; ?></a>
            </div>
         </div>
      <?php endif; ?>
      i jedziesz po kolei level_1, level_2, level_3 itd
    • 0

    #3
    lakitu

    lakitu

      Nowy na forum

    • Zarejestrowani
    • Pip
    • 6 postów
    Po dłuższej analizie kodu stwierdzam, że nie o to mi chodziło, ale zapytam inaczej teraz.

    Powiedzmy, że posiadam drzewo kategorii, do którego dostęp jest tylko z jednego modułu:
    -cat1
    --subcat1
    --subcat2
    --itd
    -cat2
    --subcat1
    --subcat2
    --itd
    Mam stałe kategorie główne w szablonie(cat), natomiast kategorie podrzędne (subcat) zmieniają się w zależności od produktów w katalogu.

    Problem w tym, że w konfiguracji katalogu mam dostęp wyłącznie do całego drzewa (parents+children), więc po wyświetleniu itemów z levelu_2 pojawią mi się wszystkie subcategorie, a chciałbym pobrać odzielnie każdy level_2 - jak to zrobić :?:
    • 0




    Użytkownicy przeglądający ten temat: 0

    0 użytkowników, 0 gości, 0 anonimowych użytkowników