Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Unterschiedliche Templates je Kategorie

    tele

    • Fördermitglied
    • Beiträge: 126
    Unterschiedliche Templates je Kategorie
    am: 10. Mai 2013, 13:50:57
    Hallo Leute, ich suche eine Lösung um im xt:commerce 3 shop und modified shop unterschiedliche Templates je Kategorie anzeigen zu lassen.

    Das Heist in KAT1 mit alles unter KATs und Produkten möchte ich Template1 haben
    KAT2 mit allen unter KATs Template2

    Dieses Code habe ich bereits in der index.php im root aber der geht nicht .....

    Code: PHP  [Auswählen]
    if($category_depth == 'top'){
    $smarty->display(CURRENT_TEMPLATE.'/startseite.html');  
      }
    else {
    if ($cat.name == 'KAT1') {
    $smarty->display(CURRENT_TEMPLATE.'/kat1.html');  
      }
    else {

    $smarty->display(CURRENT_TEMPLATE.'/index.html');
    }
    if ($cat.name == 'KAT2') {
    $smarty->display(CURRENT_TEMPLATE.'/kat2.html');  
      }
    else {
      $smarty->display(CURRENT_TEMPLATE.'/index.html');
    } }
     

    Wo liegt der Fehler?
    Also die Unterscheidung zur Startseite geht.....

    Gruß

    Linkback: https://www.modified-shop.org/forum/index.php?topic=26137.0
    Shop Hosting

    Ofendo

    • Schreiberling
    • Beiträge: 305
    • Geschlecht:
    Re: Unterschiedliche Templates je Kategorie
    Antwort #1 am: 10. Mai 2013, 15:27:42
    Schau mal hier.

    Aber nur für modified ;-)

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.868
    • Geschlecht:
    Re: Unterschiedliche Templates je Kategorie
    Antwort #2 am: 10. Mai 2013, 18:04:00
    Ich vergebe in der /includes/header.php dem body-tag eine automatisch generierte CSS-Klasse und -ID wovon sich letztere aus einem Suffix und der Kat-ID zusammensetzt die man ja aus dem GET-Parameter lesen kann. (!! Ausgelesene GET-PArameter schützen !!)
    Dann kann ich mit CSS alles machen was ich will indem ich vor die Selektoren halt die Klasse oder ID setze.

    Warum ID und Klasse ?
    Ganz einfach.
    Die Klasse verwende ich um allgemein Kategorien, Produkt-Seiten, Content-Seiten usw. zu unterscheiden.
    Die ID dann um spezielle Kategorie-, Produkt-Seiten anzusprechen.

    Halte ich für eine gute Lösung, da kann man fast alles machen und bei speziellen Produkten auch das Design anpassen wenn man möchte.

    Gruß,
    noRiddle

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: Unterschiedliche Templates je Kategorie
    Antwort #3 am: 11. Mai 2013, 20:32:58
    @noriddle und die anderen Vielen Dank erstmal....

    @noriddle kannst du mir ein kleines Snippet bsp. geben ich glaube ich stehe auf dem Schlauch....

    Gruß

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.868
    • Geschlecht:
    Re: Unterschiedliche Templates je Kategorie
    Antwort #4 am: 13. Mai 2013, 08:38:00
    Du hast Post ;-)

    Gruß,
    noRiddle

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: Unterschiedliche Templates je Kategorie
    Antwort #5 am: 18. Mai 2013, 23:19:20
    Kurze frage nochmal am Rande:

    Wenn ich jetzt den cpath auslese und auf eine kategorie prüfe ... muss ich dann nur nach der cat id suchen oder nach der kategorie direkt da der cpath ja mit seo umgeschrieben wird.

     if(isset($_GET['cPath'] == '1883')) { dann lade das div } else { das default }

    Das haut irgendwie nicht hin .....

    Oder kann ich direkt auf die body tag id prüfen?

    Gruß

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.868
    • Geschlecht:
    Re: Unterschiedliche Templates je Kategorie
    Antwort #6 am: 18. Mai 2013, 23:26:12
    Ich hatte dir doch geschrieben wie's geht.
    Die vergebene body-id oder body-class nutzt du für CSS,
    z.B. für alle Kategorien
    Code: CSS  [Auswählen]
    body#cat #content {DEINE_STYLES}

    z.B. für eine bestimmte Kategorie
    Code: CSS  [Auswählen]
    body.cat-1_3 #content {DEINE_STYLES}

    Wenn du weitere HTML-Elemente benötigst, baust du dir ein categorie_listing_WAS_WEISS_ICH.html -Template und lädst es in den Ordner /templates/DEIN_TEMPLATE/module/categorie_listing .
    Dieses Template suchst du dann im Dropdown bei der Kategoriebearbeitung im Backend aus.

    Wenn du nicht klar kommst, kannst du mich bis 00:00 noch anrufen.

    Gruß,
    noRiddle

    tele

    • Fördermitglied
    • Beiträge: 126
    Re: Unterschiedliche Templates je Kategorie
    Antwort #7 am: 19. Mai 2013, 07:37:06
    Es funktioniert ja, nur wollte ich gern den cpath abfragen ob die Oberkategorie vorkommt sonst muss ich ja von jeder Unterkat die id im css mit geben. oder gibt es da noch ein Trick?

    Beim Produkten gibt er keine id aus, das wäre auch noch so ein Punkt.

    Ich würde gern eine Abfrage machen die prüft ob: Die Oberkat ID vorkommt um dann ein anderes css zu laden.

    In den Produkten müsste ich das auch abfragen damit man sieht zu welcher Kat das Produktgehört.

    Topmenü + col right und left bekommen dann eine andere Farbe und ein Header Bild ändert sich.

    gruß

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.868
    • Geschlecht:
    Re: Unterschiedliche Templates je Kategorie
    Antwort #8 am: 19. Mai 2013, 13:27:48
    Wir hatten da kurz drüber gesprochen.
    Man kann jeder Seite eine Klasse und/oder ID geben, auch den Produktseiten.
    Es ist allerdings problematisch bei Produktseiten die Kategorie auszulesen.
    • ist die Kategorie nicht im Pfad enthalten,
    • wäre das nicht das größte Problem da man sie aus der Tabelle product_to_categories auslesen könnte, welches
    • aber wieder ein Problem ist weil Produkte mehrfach verlinkt werden können (also in verschiedene Kategorien) und man nicht festlegen kann welche davon die eigentliche "Haupt"-Kategorie sein soll.

    Das Problem ist hier schonmal ausführlicher besprochen worden jedoch noch nicht endgültig gelöst.
    Deshalb die body-ID/Class mithilfe der du alles machen kannst was du möchtest.
    Im übrigen: Auch Produktseiten haben Templates (im Template-Ordner /module/product_info)...

    Wo ist denn das Problem "von jeder Unterkat die id im css" mitzugeben ?
    Dafür ist CSS doch da, oder hast du jeweils 20 Unterkats ?
    Außerdem wolltest du doch eine Verbindung zwischen categorie_listing -Template und CSS machen.
    Über die eigenen categorie_listing -Templates (und auf Wunsch auch die product_info -Templates) hast du doch bereits eine große Auswahl/Einschränkung treffen können.

    Die Abfrage ob die Oberkat ID vorkommt möchtest du genau wo haben ?

    Was du anscheinend möchtest scheitert u.a. an dem o.g./verlinkten product_path -Problem
    und daran, daß das Template ja vom Server aus verschiedenen Komponenten zusammengebaut wird.
    Deshalb gibt es ja die genannte Möglichkeit verschiedener Templates für categorie_listing, product_listing, product_info.

    Gruß,
    noRiddle
    Shop Hosting
    0 Antworten
    2330 Aufrufe
    03. März 2014, 12:35:26 von mamusch
    3 Antworten
    3981 Aufrufe
    11. August 2009, 15:23:07 von koshiro
    9 Antworten
    5891 Aufrufe
    26. Februar 2018, 12:53:27 von lithoverlag