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: index.html an Artikel, Kategorie und Contentseiten anpassen via Smarty-Modifier

    Accio

    • Mitglied
    • Beiträge: 141
    Moin an alle die das lesen,

    wie der Titel schon sagt, geht es hier, für mich, um etwas anspruchsvolles.

    Ich/wir wollen den Shop an einigen Stellen nach unseren Wünschen weiter bearbeiten, dazu gehört, das wir bestimmte Boxen nur auf bestimmten Seiten anzeigen lassen wollen, sowie, dass einige Seiten unterschiedliche Breiten nutzen als andere, puh viel für den Anfang, ich weiß

    Ich habe mich dann gestern schon mal mit Artikel von gunnART beschäftigt: Smarty Modifier für xt:Commerce - Mehr Übersicht bei der Template-Programmierung

    Nachdem ich das sehr sinnvoll finde, wenn man am Template einiges ändern möchte, noch einen Überblick über all die Änderungen zu haben, habe ich nach den nötigen Einstellungen und (BackUps) mal 2 von gunnART bereitgestellten Tests durchgeführt, und es funktioniert schon mal alles.
    Also bis dahin schon mal richtig gemacht.

    Jetzt mal eine spezielle Frage.!
    PS: Seht es mir nach, PHP ist noch nicht meine beste Scriptsprache!

    Wie muss der modifier Code lauten, wenn ich die Kategorie-Box(Auflistung der Kategorien) nur in den Unterkategorien anzeigen lassen möchte?
    Oberkategorie=(Damen)->Unterkategorie=(Schuhe, Kleider usw.)

    Meine erste Überlegung war:
    Wenn Unterkategorie-Seite angezeigt wird, dann zeige Kategorie-Box, ansonsten "false".
    Wie gesagt, das war erstmal meine Vorüberlegung.

    Ich danke Euch wie immer im Voraus

    mfg
    chris



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

    hwk

    • Fördermitglied
    • Beiträge: 138
    Hallo Chris,
    gilt diese Frage für Dein CosmoShop oder für ein modified eCommerce Shopsoftware Shop?
    mfg Lutz

    Accio

    • Mitglied
    • Beiträge: 141
    Die Anfrage gilt für den neuen modified eCommerce Shopsoftware Shop, wir sind jetzt bei den letzten Feinarbeiten.

    Wir hoffen, dass wir dann bald fertig sind.

    mfg
    chris

    Accio

    • Mitglied
    • Beiträge: 141
    Hier mal mein 1. Versuch, geht nicht zu streng mit mir ins Gericht, die ersten Versuche mit php bzw. smarty brauchen Zeit und Ausdauer

    Beispiel: Anzeigen der Kategorie-Box nur auf der Artikelseite (Artikelübersicht)

    Code: PHP  [Auswählen]
    {*Kategoriebox nur auf Artikelübersicht anzeigen lassen*}
    {if Unterkategorie=yes}
    dann:

    Code: PHP  [Auswählen]
    {insert name=„Kategorie-Box“ lid=#kategorie_box_id# sid=#site_id#}
    {if „Unterkategorie“=true show=true}
    Er ist bei weitem nicht korrekt, vielleicht kann mir aber Jemand erklären wie man meine Idee/Wunsch logisch umsetzen kann.

    Ich danke Euch wieder im Voraus.

    mfg
    chris

    Accio

    • Mitglied
    • Beiträge: 141
    Habe soeben im Wiki diesen Beitrag gefunden: Box nur auf Startseite anzeigen

    Code: PHP  [Auswählen]
     {if strstr($smarty.server.PHP_SELF, 'index')}
        {if $smarty.get.cPath==null and $smarty.get.manufacturers_id==''}
            {$box_WASAUCHIMMER} nur auf der startseite anzeigen
        {/if}
    {/if}
    {if strstr($smarty.server.PHP_SELF, 'shop_content') and $smarty.get.coID=='5'}
           {$box_WASAUCHIMMER} nur auf der startseite anzeigen
     {/if}
    Beispiel:

    Code: PHP  [Auswählen]
    {if strstr($smarty.server.PHP_SELF, 'index')}
        {if $smarty.get.cPath==null and $smarty.get.manufacturers_id==''}
            {$box_category} nur auf den Unterkategorien anzeigen lassen
        {/if}
    {/if}
    {if strstr($smarty.server.PHP_SELF, 'shop_content') and $smarty.get.coID=='5'}
           {$box_category} nur auf den Unterkategorien anzeigen lassen
     {/if}
    Bei $smarty.get.cPath== (Gibt es für die Unterkategorien einen bestimmten cPath Code?)

    Da frage ich mich doch, ob man diesen Code auch so umbauen kann, das die Kategoriebox nur auf den Unterkategorien angezeigt wird?
    Dank im Voraus

    mfg
    chris

    jumpmore

    • Neu im Forum
    • Beiträge: 41
    Hallo Accio,

    zunächst:
    Vielen Dank für den Link zur Seite gunnart.de.
    Da stecken tatsächlich tolle Möglichkeiten drin. :-)

    Aber nun zu Deinem Problem:
    Auf der Seite "Smarty-Function “CatNavigator” für xt:Commerce" findest Du folgende Info:

    Zitat
    [...]

    Code: PHP  [Auswählen]
    {$CAT_NAVIGATOR.MOTHER_CAT.name}
    {$CAT_NAVIGATOR.MOTHER_CAT.link}
     
    –> Name und Link der jeweiligen “Mutterkategorie” - befindet man sich in einer der Hauptkategorien, ist beides leer
    [...]

    Wenn Du diese Funktionen / das Modul von gunnART.de bei Dir einbindest und auf diese Variablen abfragst (s. Beispiel), dann solltest Du Dein Problem lösen können.

    Beispiel Abfrage:

    Code: PHP  [Auswählen]
    {if $CAT_NAVIGATOR.MOTHER_CAT.link=='' and $CAT_NAVIGATOR.MOTHER_CAT.name==''}
    {$box_CATEGORIES}
    {/if}
     
    ggf. reicht auch die Abfrage nach nur einer der beiden Variablen.

    VG Elke

    Accio

    • Mitglied
    • Beiträge: 141
    Hallo Elke,

    super deine Tipps :thumbs:

    Ich habe den Code in die Index.html gesetzt, funktioniert auch, aber eine Frage habe ich da noch.
    Wenn ich in .MOTHER_CAT.link=='3' eingebe, wird auch in Unterkategorie 1 die Box angezeigt, jedoch, wenn ich =='3_87_89' das ist die cPath ID von einer Unterkategorie 2. Grades, dann geht es auch nicht, dabei stimmen die ID's ja im Admin überein.

    Da wäre man wieder, eindeutige Identifizierung einer bestimmten Unterkategorie

    mfg
    chris

    jumpmore

    • Neu im Forum
    • Beiträge: 41
    Hallo Chris,

    damit wir möglichst nicht (weiterhin) aneinander vorbeireden, möchte ich Dich bitten Folgendes zu beschreiben:

    1. Die Struktur Deines Menüs - und so stelle ich mir das ungefähr vor:

    - Hautkategorie_1 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_1_1 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_1_2 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_1_3 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - Hautkategorie_2 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_2_1 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
        - Unterkat_2_1_1 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
        - Unterkat_2_1_2 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
        - Unterkat_2_1_3 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_2_2 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - Hautkategorie_3 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_3_1 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_3_2 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
      - Unterkat_3_3 (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)

    2. Nun beschreibe möglichst genau in welche Unterkategorie Du welche Box ausgeben willst und auch ob der Inhalt der Boxen immer gleich ist oder auch nicht. Sollte das Menü (die Kategorien) sich irgendwann ändern können, versuche auch die zukünftigen Kategorien mit in Deine Überlegungen mit einzubeziehen.

    Ich denke, dann sollten wir das Problem lösen können. ;-)

    VG Elke

    Accio

    • Mitglied
    • Beiträge: 141
    Hallo Elke,

    hier mal unser derzeitiges Menü

    - Babys (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
        - Jungen (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Anoraks (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
           - Anzüge (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Jacken (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Jeans (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
           - Nachtwäsche (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Overalls (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Sets (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Shirts (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
            - Strampler (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
        - Mädchen (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - Kinder (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Jungen (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Kindermode (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Mädchen (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - Damen (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Mode (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Schuhe (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - Wohnen  (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Accessoires (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Deko (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - Kunst (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Portraits (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Motive (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Neu (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
    - % Sale (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)
         - Kinder (ID-Nr., $CAT_NAVIGATOR.MOTHER_CAT.name)

    Das ist mal ein kleiner Auszug aus unserer Struktur des Menüs.

    -> Die die unterstrichen sind = Hauptkategorien
          Die Fettmarkierten bilden die Seiten (Unterseiten/Unterkategorien 2. Ordnung) wo die Menübox angezeigt werden soll.

    Im Admin steht für Overalls (Babys/Jungen) in der URL folgendes: cPath=87&cID=95 (Auszug) , daran hatte ich mich bisher orientiert, da ich es für die ID gehalten habe.

    Nun gut, die Kategoriebox soll nicht in der Hauptkategorie erscheinen, auch nicht in der Unterkategorien 1. Ordnung, sondern (hier fett dargestellt) in den Unterkategorien 2. Ordnung (ich würde sagen, dass das die Product_listing ist, aber kann mich auch irren)

    Zu 2. Es ist schön, wenn die komplette Kategorie angezeigt werden würde.
    Es muss hierbei keine Unterscheidung vorgenommen werden.

    jumpmore

    • Neu im Forum
    • Beiträge: 41
    Hallo Accio,

    sorry, aber um dir weiterhelfen zu können, brauche ich zumindest für die 1. Hauptkategorie und deren Unterkategorien die jeweiligen ID-Nr. und den Inhalt der Variable $CAT_NAVIGATOR.MOTHER_CAT.name.
    Ich will mit Hilfe dieser Infos herausfinden, ob man diese für die notwendige Abfrage verwenden kann.

    VG Elke

    Accio

    • Mitglied
    • Beiträge: 141
    Bitte was?
    Sry, aber da sehr ich nicht durch. Ok Du brauchst also diese Werte um dies zu erstellen / zu testen.

    Wie und wo lese ich diese Daten raus, die Du benötigst?
    Ansonsten stehe ich weiter auf dem Schlauch.

    grüße
    crhis

    jumpmore

    • Neu im Forum
    • Beiträge: 41
    Die Daten kannst Du z.B. dadurch ermitteln, indem Du irgendwo in der Datei index.html folgendes hineinschreibst:

    Code: PHP  [Auswählen]
    MOTHER_CAT.name: {$CAT_NAVIGATOR.MOTHER_CAT.name}
    M.E. müsste hinter cPath die ID-Nummer stecken, die Du u.a. über den Link in der Statuszeile herausfinden kann. Da ich im Moment nur eine Kategorie habe und scheinbar mich auch mal wieder nicht einloggen kann, kann ich Dir da leider im Moment auch nicht weiterhelfen.
    Bis später.

    Nachtrag:
    Entschudlige, die ID-Nr. steht in der Variable cID, d.h. in cPath kannst Du in diesem Fall vergessen. ;-)

    VG Elke

    Accio

    • Mitglied
    • Beiträge: 141
    Habe mal deinen Code in die Index.html eingesetzt, es hat sich aber nichts getan, konnte keine Daten auslesen.
    Naja, ich bin jetzt mal anders zu den cID's gekommen.

    Hauptkategorie: Baby's => cID = 3
    Unterkategorie 1. Ordnung: Jungen => cID = 87
    Unterkategorie 2. Ordnung: Anoraks => cID = 89
    Unterkategorie 2. Ordnung: Anzüge => cID = 90
    Unterkategorie 2. Ordnung: Hose => cID = 91
    Unterkategorie 2. Ordnung: Jacken => cID = 92
    Unterkategorie 2. Ordnung: Jeans => cID = 93
    Unterkategorie 2. Ordnung: Nachtwäsche => cID = 94
    Unterkategorie 2. Ordnung: Overalls => cID = 95
    Unterkategorie 2. Ordnung: Pullover => cID = 97
    Unterkategorie 2. Ordnung: Sets => cID = 96
    Unterkategorie 2. Ordnung: Shirts => cID = 98
    Unterkategorie 2. Ordnung: Strampler => cID = 99

    Die Daten habe ich aus dem Adminbereich, hoffe diese helfen uns weiter, es kommt zusätzlich noch eine Csid, aber ich geh mal davon aus, dass diese nicht relevant für die Lösung dieses Problems ist.

    jumpmore

    • Neu im Forum
    • Beiträge: 41
    Die cIDs reichen leider nicht.

    Oben schreibst Du:

    [...]
    Wenn ich in .MOTHER_CAT.link=='3' eingebe, wird auch in Unterkategorie 1 die Box angezeigt, jedoch, wenn ich =='3_87_89' das ist die cPath ID [...]
    [...]

    Bitte probiere es noch einmal, ggf. in den unterschiedlichsten Varianten, denn wenn Du auf eine Variable abfragen kannst, dann muss man den Inhalt auch ausgeben können.

    VG Elke

    14 Antworten
    10072 Aufrufe
    04. April 2011, 16:49:11 von jumpmore
    7 Antworten
    2149 Aufrufe
    22. Januar 2017, 22:01:11 von awids
    2 Antworten
    3113 Aufrufe
    16. Oktober 2013, 17:10:57 von snaper123
    2 Antworten
    2689 Aufrufe
    15. Januar 2012, 21:36:27 von metatron
               
    anything