Kategorien auf Startseite

  • Ersteller des Themas Ersteller des Themas neuni
  • Erstellungsdatum Erstellungsdatum

neuni

Aktives Mitglied
30. September 2009
8
0
Hallo,

nachdem ich leider nichts gefunden habe, um alle Kategorien (ähnlich wie bei Unterkategorien) auf meiner Startseite darzustellen, habe ich selbst etwas gebaut.
Vielleicht kann der ein oder andere das auch brauchen.

Der folgende Code ist einzubinden in die Datei templates/NAME/tpl_inc/seite_startseite.tpl
Die genaue Stelle hängt davon ab, wo die Kategorien dargestellt werden sollen. Ganz am Ende der Datei eingebunden werden sie nach Topartikel, Neu im Sortiment usw. dargestellt.
Für die Darstellung ganz oben wäre der Code einzufügen unterhalb von "{include file="auswahlassistent.tpl"}".

PHP:
{php}
    $AufgeklappteKategorien = new KategorieListe();    $AufgeklappteKategorien->getAllCategoriesOnLevel(0);
    $this->assign("start_kategorien", $AufgeklappteKategorien->elemente);
{/php}
{if $start_kategorien|@count > 0}      <ul class="category_subcategories hlist">      {foreach name=unterkats from=$start_kategorien item=Unterkat}         <li class="p50 {if $smarty.foreach.unterkats.index%2==0 && $smarty.foreach.unterkats.index>0}clear{/if}">            <div class="category_wrapper clearall child {if $smarty.foreach.unterkats.index%2==0}first{else}last{/if}">               <ul class="category_item">                  <li class="img">                        <a href="{$Unterkat->cURL}"><img alt="{$Unterkat->cName}" src="{$Unterkat->cBildURL}" /></a>                  </li>                  <li class="desc">                        <h2><a href="{$Unterkat->cURL}">{$Unterkat->cName}</a></h2>                        <p class="item_desc">{$Unterkat->cBeschreibung|strip_tags|truncate:80}</p>
                        {if isset($Unterkat->Unterkategorien) && $Unterkat->Unterkategorien|@count > 0}                           {foreach from=$Unterkat->Unterkategorien item=UnterUnterKat}                              <p>&bull; <a href="{$UnterUnterKat->cURL}">{$UnterUnterKat->cName}</a></p>                           {/foreach}                        {/if}                  </li>               </ul>            </div>         </li>      {/foreach}      </ul>{/if}

Edit: Leider veranstalten die HTML/PHP-Tags hier im Forum etwas Unordnung im Quellcode. Deshalb hier noch einmal in formatiert: http://codepad.org/SC10GQsd
 

casim

Sehr aktives Mitglied
26. Juni 2012
5.934
10
AW: Kategorien auf Startseite

Der folgende Code ist einzubinden in die Datei templates/NAME/tpl_inc/seite_startseite.tpl

empfehlenswert wäre aber in diesem Falle eben nicht die original-seite_startseite.tpl zu bearbeiten, sondern diese nach

seite_startseite_custom.tpl

zu kopieren und erst in dieser dann die Änderungen einzufügen ... weiterhin ist zu beachten, dass die Verwendung des php-tag innerhalb eines smarty-tpl als deprecated eingestuft ist (siehe: {php} | Smarty)
 

neuni

Aktives Mitglied
30. September 2009
8
0
AW: Kategorien auf Startseite

empfehlenswert wäre aber in diesem Falle eben nicht die original-seite_startseite.tpl zu bearbeiten, sondern diese nach

seite_startseite_custom.tpl

zu kopieren und erst in dieser dann die Änderungen einzufügen ... weiterhin ist zu beachten, dass die Verwendung des php-tag innerhalb eines smarty-tpl als deprecated eingestuft ist (siehe: {php} | Smarty)

Guter Tipp mit dem Custom...kannte ich noch nicht.
Den php-Tag hatte ich genutzt, um Änderungen an den php-Dateien zu vermeiden. Gibt es da auch eine Custom-Variante?
 

casim

Sehr aktives Mitglied
26. Juni 2012
5.934
10
AW: Kategorien auf Startseite

nein für php-Dateien gibt es keine "custom"-Variante ... ich würde das ganze in ein Plugin auslagern, was dir einerseits php-seitig die Variable füllt und andererseits das ganze dir ins Template setzt (hook140 beschränkt auf Startseite zum Beispiel)
 

neuni

Aktives Mitglied
30. September 2009
8
0
AW: Kategorien auf Startseite

Hm gut...mit den JTL-Plugins habe ich mich bisher nicht weiter auseinandergesetzt. Für mich funktioniert es erstmal so.
Falls sich jemand die Mühe macht und ein solches Plugin erstellt sei er gebeten es hier doch auch reinzustellen.
 

Thomas Lisson

Administrator
Mitarbeiter
24. März 2006
15.574
300
Köln

Ähnliche Themen