Neu JTL5 - NOVA: Eigene Seite über Artikelattribute im Tab einbinden

knackig

Sehr aktives Mitglied
17. November 2011
917
143
Nordhessen
Ich habe schon länger die Möglichkeit gesucht, eigene Seiten im Shop durch die tab1, tab2-Attribute über die Wawi einbinden zu können. Bspw für Informationen, die bei vielen Artikel abgelegt werden müssen/sollen. Bei der Umsetzung mit den Standardmitteln müsste man bei jeder Änderung des Inhalts die Ameise bemühen. Doch eine CMS-Seite anpassen ist einfacher, als Export, Bearbeiten, Import über die Wawi/Ameise.

In dem neuen NOVA-Template habe ich es mit geringer Templateanpassung nun endlich doch geschafft :thumbsup: . Falls es für jemanden interessant ist, hier meine Lösung:

  1. Eine gewöhnliche CMS-Seite anlegen
    Wichtig für die Attribute ist die ID.
  2. Einstellung in der Wawi:
    Die Attribute werden wie folgt in der Wawi angelegt:
    tab1 name = "cms_"+Name des Tabs (zB: Wenn "Anleitung" im Tab-Namen angezeigt werden soll: "cms_Anleitung")
    tab2 inhalt = ID der eigenen Seite im Shop (wird beim Bearbeiten des Seite ganz oben neben dem Namen angezeigt)
  3. Template-Anpassung
    Mittels Child-Template werden 2 Blöcke in der Datei /productdetails/tabs.tpl abgeändert. Hier der Inhalt der Child-Datei /productdetails/tabs.tpl:

    Code:
    {extends file="{$parent_template_path}/productdetails/tabs.tpl"}
    {block name='productdetails-tabs-tab-separated-tabs'}
    {foreach $separatedTabs as $separatedTab}
    {tab title=$separatedTab.name active=$setActiveClass.separatedTabs && $separatedTab@first id="{$separatedTab.id}"}
    {if $separatedTab.name|substr:0:4 == 'cms_'}
    {$separatedTab.name = $separatedTab.name|substr:4}
    {get_cms_content kLink=$separatedTab.content}
    {else}
    {$separatedTab.content}
    {/if}
    {/tab}
    {/foreach}
    {/block}
    
    {block name='productdetails-tabs-separated-tabs'}
    {foreach $separatedTabs as $separatedTab}
    {card no-body=true}
    {cardheader id="tab-{$separatedTab.id}-head"
    data=["toggle" => "collapse",
    "target"=>"#tab-{$separatedTab.id}"]
    aria=["expanded" => "{if $setActiveClass.separatedTabs && $separatedTab@first}true{else}false{/if}",
    "controls" => "tab-{$separatedTab.id}"]
    }
    {if $separatedTab.name|substr:0:4 == 'cms_'}
    {$separatedTab.name|substr:4}
    {else}
    {$separatedTab.name}
    {/if}
    {/cardheader}
    {collapse id="tab-{$separatedTab.id}" visible=($setActiveClass.separatedTabs && $separatedTab@first)
    data=["parent"=>"#tabAccordion"]
    aria=["labelledby"=>"tab-{$separatedTab.id}-head"]
    }
    {cardbody}
    {if $separatedTab.name|substr:0:4 == 'cms_'}
    {get_cms_content kLink=$separatedTab.content}
    {else}
    {$separatedTab.content}
    {/if}
    {/cardbody}
    {/collapse}
    {/card}
    {/foreach}
    {/block}
Wesentliche Änderung ist die folgende:
Statt der einfachen Ausgabe des Namens und des Inhalts wird erst geprüft, ob im Namen an den ersten 4 Stellen "cms_" vorkommt: {if $separatedTab.name|substr:0:4 == 'cms_'}
Falls ja, wird der Name um die ersten 4 Stellen gekürzt: {$separatedTab.name|substr:4}
Als Inhalt wird dann die CMS-Seite mit der im Attribut genannten ID abgerufen: {get_cms_content kLink=$separatedTab.content}
Das gleiche in 2 Blöcken, da es einmal für die Tab-Darstellung und einmal die Ohne-Tab-Darstellung (zB mobil) funktionieren soll.

Der Vorteil: Wenn Tab-Name nicht mit "cms_" beginnt, greift die Standard-Vorgehensweise. Also Name und Inhalt wie in der Wawi eingestellt.

Vielleicht hilft es jemandem weiter...
 
  • Gefällt mir
Reaktionen: Patrick Gugelsberger
Ähnliche Themen
Titel Forum Antworten Datum
Neu Infinite Scrolling - EndlessScrolling für den JTL5 - Nova Allgemeine Fragen zu JTL-Shop 0
Neu JTL5 / Nova / Banner / Slider Startseite Betrieb / Pflege von JTL-Shop 0
Neu Doofinder JTL5 Plugin wie kriege ich den Shop angebunden Plugins für JTL-Shop 1
Beantwortet Gateway Timeout nach dem Upgrade von jtl4 auf jtl5 . Weiterleitungen Upgrade JTL-Shop4 auf JTL-Shop5 5
Neu Blogbeiträge JTL5 Shop - Bild löschen geht nicht Allgemeine Fragen zu JTL-Shop 1
Gelöst Probleme bei Update auf JTL5 - Class not found Installation / Updates von JTL-Shop 1
Neu NOVA > logo hat leeres srcset Templates für JTL-Shop 0
Neu NOVA > Wie eigene Fonts im Child-Theme einbinden Templates für JTL-Shop 5
Neu Nova - Mobile - Ansicht - Artikellisten - Ansicht - Verständnissfrage Templates für JTL-Shop 2
Neu Shop5 Nova Template Allgemeine Fragen zu JTL-Shop 2
Neu Nova Template Artikelliste Bilder werden falsch geladen JTL-Shop - Fehler und Bugs 0
Neu NOVA - Komprimierung von JS & CSS Templates für JTL-Shop 4
Neu NOVA Performance Optimierung? Templates für JTL-Shop 8
Neu Bild in Artikelliste im Verhältnis größer Nova Templates für JTL-Shop 2
Neu Nova Template - Artikelbilder der Artikeldetailseite links neben dem Hauptbild Templates für JTL-Shop 2
Neu Artikelbeschreibung als Artikelkurzbeschreibung im Nova - Template - Listenansicht Allgemeine Fragen zu JTL-Shop 2
Neu Im Child vom NOVA auch auf der Startseite die linken Boxen Templates für JTL-Shop 3
Neu Nova Megamenu Hovereffekt ausschalten Templates für JTL-Shop 3
NOVA - Mobile Navigation ohne MegaMenu? Einrichtung JTL-Shop5 1
Beantwortet Child Template lädt css von Nova nicht Templates für JTL-Shop 1
Neu NOVA child-template CSS rem(16px) Templates für JTL-Shop 1
Neu Unfall passiert ... Kann mir jemand die Original TPL Dateien NOVA Shop 5 zur Verfügung stellen Allgemeine Fragen zu JTL-Shop 3
Neu Slider Warenkorb zufügen > Nova Templates für JTL-Shop 7
Beantwortet NOVA unter JTL Shop 5 zeigt auf Startseite nur Header und Footer JTL-Shop - Fehler und Bugs 2
Neu Hersteller Name beim Warenkorb deaktivieren (NOVA Templates) Allgemeine Fragen zu JTL-Shop 3
Neu Nova-Template Kundennummer / Firma Technische Fragen zu Plugins und Templates 3
Neu NOVA Template - Syntax {col}, {row} Technische Fragen zu Plugins und Templates 1
Neu NOVA Template - kein Vorschaubild für Variationen im Slick-Slider Templates für JTL-Shop 0
Neu JTL SHOP 5 NOVA - keine Preisspanne, kein ab Technische Fragen zu Plugins und Templates 0
Neu Shop 5 Nova child theme editor zeigt keinen Inhalt Templates für JTL-Shop 11
Neu NOVA: Unterschiedliche Bildhöhen in einer Zeile Templates für JTL-Shop 1
Neu JTL Shop 5.0.1 Nova-Template Slick Slider Bildgröße fehlerhaft JTL-Shop - Fehler und Bugs 1
Neu Shop5 Nova im Kopf Bereich eine Telefonnummer eintragen Allgemeine Fragen zu JTL-Shop 4
Neu JTL Shop5 mit Standart Template Nova Bildergröße für Banner und Slider ändern Allgemeine Fragen zu JTL-Shop 0
Fragen zum Nova Template Kategorien etc Upgrade JTL-Shop4 auf JTL-Shop5 2
Neu JTL Shop 5 NOVA: Child-Datei für Preisanzeige ohne Rabatt gesucht Dienstleistung, Jobs und Ähnliches 0
Neu Shop 5 NOVA: Plugin oder updatesichere Child-Datei für Artikeldetail-Preisanzeige gesucht Dienstleistung, Jobs und Ähnliches 1
Neu Shop 5 NOVA: Hintergrundfarbe für Mega-Menu ändern Templates für JTL-Shop 4
Neu JTL Shop 5 NOVA: Anmeldebutton soll gegen anderes Icon getauscht werden Templates für JTL-Shop 1
Sonderangebot von Kind in Nova anzeigen Einrichtung JTL-Shop5 1
Neu JTL Shop 5 Theme Editor Nova Template Farbe Buttons Templates für JTL-Shop 6
Neu JTL Shop 5 NOVA Footer Textfarbe Templates für JTL-Shop 3
Neu Shop 5 - Nova Template Umlaute/Sonderzeichen Fehler im Kundenmenü/Registrierung Templates für JTL-Shop 15
Neu JTL Shop 5 NOVA-Template Kategorien als Menüpunkt Technische Fragen zu Plugins und Templates 6
Neu <body> Tag nicht in header.tpl? | Shop5 NOVA Template | CMP-Code Consentmanager User helfen Usern - Fragen zu JTL-Wawi 0
Neu Eigene Schriftarten hinterlegen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu Eigene Übersicht in der Artikelübersicht Individuelle Listenansichten in der JTL-Wawi 2
Neu shop5 > canonical tags für eigene seiten enthalten doppelte urls? Allgemeine Fragen zu JTL-Shop 2
JTL Shop 5.0.1 - Eigene Seite wird im Backend nicht mehr angezeigt nach dem Verschieben in andere Linkgruppe Einrichtung JTL-Shop5 5
Neu Variable Eigene Felder für Versandlabel User helfen Usern - Fragen zu JTL-Wawi 0

Ähnliche Themen