Neu Template durch plugin überschreiben

algonix

Neues Mitglied
26. Mai 2020
7
0
Guten Morgen,
Ich versuche derzeit das template box_filter_characteristics.tpl über ein plugin zu überschreiben. Das klappt soweit auch gut über den HOOK => \HOOK_SMARTY_OUTPUTFILTER. Überschrieben wird das template durch das ursprüngliche, modifizierte box_filter_characteristics.tpl. Allerdings rendert das modifzierte template nicht . Das debuggen zeigt, dass zuvor in der Bootstrap.php übergebenen variablen die für das template benötigt werden keine Werte haben.

Konkret:
Die variable $oBox wird vom template (box_filter_characteristics.tpl)benötigt allerdings hat diese zum Zeitpunkt der hookausführung keinen Wert zugewiesen. Normalerweise sollte dies aber nicht der Fall sein oder? Da der \HOOK_SMARTY_OUTPUTFILTER am "Ende des Smarty-Output Filters" ausgeführt wird?

Globale variablen können innerhalb des Plugins regulär über den namen verwendet werden ($oBox), oder muss ich hier etwas beachten?

Viele Grüße
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.385
262
Wenn Du eine ganze TPL-Datei überschreiben willst, nutze den Hook 208. Damit hast Du vollen Zugriff auf alle in dieser TPL verwendeten Variablen/Objekte, anders als bei Hook 140. Hoock 140 dient in erster Linie dazu, Code per PHP-Query (ähnliche JQuery) per Selektor zu manipulieren. Weiter muss man sich alle Variablen vorher über die Methode Shop::Smarty()->getTemplateVars() ziehen bevor man Zugriff hat.
 

MaxWe

Sehr aktives Mitglied
6. August 2018
311
42
Hamburg
Moin Moin,
ich entführe den Thread einfach mal.

Ich versuche grade eine Templatefile via HOOK 208 zu überschreiben. Grundsätzlich würde es mir auch reichen einzelne Blöcke zu überschreiben..
Ich verstehe die HOOKS leider noch nicht so ganz :/
Aktuell versuche ich es via HOOK 208 so:
Code:
<?php
/**
* Hook HOOK_SMARTY_FETCH_TEMPLATE
*
* @global String &$original
* @global String &$custom
* @global String &$fallback
* @global String &$out
*/

if(strpos($original,'variationen')){
    $out = $oPlugin->cFrontendPfad.'templates/'.'variationen.tpl';
}
Allerdings ohne Erfolg, wie greift man denn die richtige .tpl ab und gibt seine eigene weiter?

Wäre für meinen Fall allerdings vielleicht der HOOK 140 besser geeignet? Wie gesagt, einzelne Blöcke würden mir theoretisch reichen. Allerdings scheint mir das mittels phpquery recht aufwendig..

Beste Grüße
 

FMoche

Moderator
Mitarbeiter
15. Dezember 2014
1.359
340
Halle (Saale)
Versuchst du das in Shop 5?
Dann reicht es, im Plugin die Struktur der zu überschreibenden Templatedatei nachzubilden und den Block zu erweitern.
Für die Templatedatei NOVA/productdetails/variation.tpl würde das heißen, im Plugin die Datei
<pluginverzeichnis>/frontend/templates/productdetails/variation.tpl
erstellen und darin den im Template definierten Block erweitern, z.B. via
Code:
{block name='productdetails-variation' append}
Ich bin Inhalt, der angehängt wird.
{/block}
 

MaxWe

Sehr aktives Mitglied
6. August 2018
311
42
Hamburg
Versuchst du das in Shop 5?
Dann reicht es, im Plugin die Struktur der zu überschreibenden Templatedatei nachzubilden und den Block zu erweitern.
Für die Templatedatei NOVA/productdetails/variation.tpl würde das heißen, im Plugin die Datei
<pluginverzeichnis>/frontend/templates/productdetails/variation.tpl
erstellen und darin den im Template definierten Block erweitern, z.B. via
Code:
{block name='productdetails-variation' append}
Ich bin Inhalt, der angehängt wird.
{/block}
Sorry, hatte ich ganz vergessen! Ich nutze den Shop 4 und würde es auch gerne dafür umsetzen..
Hättest du da eventuell auch eine Lösung?

Davon ab scheint es in der Version 5 deutlich einfacher geworden zu sein!
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Template anpassen - parallel zum bestehenden, ohne Aktivierung? Templates für JTL-Shop 2
Beantwortet Werte eigener Kundenfelder im Template anzeigen Allgemeine Fragen zu JTL-Shop 0
Neu Template/ Vorlage für Bestellbestätigung gesucht Templates für JTL-Shop 0
Neu Nova Template Container in Container Boxed Templates für JTL-Shop 2
Neu Unterstützung bei JTL5-Shop-Überarbeitung gesucht - Template/Plugin uvm. Dienstleistung, Jobs und Ähnliches 1
Neu JTL Shop Template Domain lösen? Allgemeine Fragen zu JTL-Shop 0
Neu How to maintain session value in the portlet template file Technische Fragen zu Plugins und Templates 0
Neu Custom Template für Custom Artikel mit Plugin? Plugins für JTL-Shop 0
Neu JTL-Shop 5 Nova-Template / Darstellung der Produktliste teilweise fehlerhaft JTL-Shop - Fehler und Bugs 1
Neu Template für Dateinamen hat nicht den gewünschten Effekt Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 6
Neu Eigenes Template sichern Templates für JTL-Shop 1
Neu Vorstellung des Avada-Themes für das NOVA-Template Templates für JTL-Shop 2
Neu Datenbankeintrag mit ausgewähltem Template Templates für JTL-Shop 0
Neu Hilfe - Performanceproblem mit Shop durch Worker JTL-Shop - Fehler und Bugs 27
In Diskussion Automatische Zuweisung der Kategorien für Artikel durch Workflow JTL-Workflows - Ideen, Lob und Kritik 3
Kann ich eine email an die Wawi senden durch die dann ein neuer Auftrag generiert wird? (Daten müssen händisch vervollständigt werden...) JTL-Wawi 1.8 2
Frage zu Verkauf Kaufland Tschechien und Slowakei - Anbindung notwendig oder auch durch Kaufland realisierbar ? kaufland.de - Anbindung (SCX) 0
Neu Die Variantenauswahl kommt teilweise auf der Artikelliste durch JTL-Shop - Fehler und Bugs 14
Neu SEO <lastmod> erhält keine Änderung durch OPC JTL-Shop - Ideen, Lob und Kritik 0
Neu Sehr hohe CPU last durch DB Allgemeine Fragen zu JTL-Shop 5
Neu Neues Plugin: Google Translate / Übersetzer (DSGVO-konform und weitere Features) Plugins für JTL-Shop 1
Neu Händlerbund Plugin lässt sich nicht installieren Shop ver. 5.3.0 Plugins für JTL-Shop 1
Neu Eigene Seiten mit Plugin erstellen Technische Fragen zu Plugins und Templates 0
Neu Neues Plugin: Instagram-Feed Portlet (Als Galerie- oder Slideransicht und weitere Features) + 3x kostenlose Lizenzen Plugins für JTL-Shop 3
Neu 🌟Neues Plugin: Bounce Landingpage Plugins für JTL-Shop 5
Neu 504 Gateway Time-Out nginx bei Plugin-Updates Gelöste Themen in diesem Bereich 10
Neu Erledigt - Plugin PayPal Checkout, Update auf 1.4.0, Komplettabsturz Plugins für JTL-Shop 1
Neu Paypal Plugin erzeugt "Quirks Mode" Betrieb / Pflege von JTL-Shop 0
Neu Mail-Versand & Plugin Doku Technische Fragen zu Plugins und Templates 2
Neu Variationen im Shop Auswahl zurücksetzen (Plugin?) Betrieb / Pflege von JTL-Shop 3
Neu NEU ✔️ PDF-Angebots-Plugin für den JTL-Shop 5 - PDF Angebote von der Produktseite oder aus dem Warenkorb heraus generieren B2C / B2B Plugins für JTL-Shop 5
Neu Neues Plugin: Hersteller Slider Portlet (Zentrierungs- oder Schwarz/Weiß-Modus, Responsive Anpassung..) inkl. 5 kostenlosen Lizenzen Plugins für JTL-Shop 4
Neu Plugin KBA Finder Implementierung/Darstellungsänderung Plugins für JTL-Shop 0
Neu JTL Connector Plugin Aktivierunf [Fehlermeldung] WooCommerce-Connector 1
Neu Erfahrung mit LS-Cache Plugin Technische Fragen zu Plugins und Templates 10
Neu 🌟Neues Plugin: FRASPY Altersprüfung & IdentitätsCheck Plugins für JTL-Shop 3
Neu 🎉 Neues Plugin: "Versandkosten und Lieferzeit automatisch beziehen - UPS Extension" 🎉 Plugins für JTL-Shop 2
Neu Neues Plugin: Formular Portlet (Drag&Drop Dateiupload by FilePond, Kontakt, Retoure, Reklamation, Gewerbenachweis..) Plugins für JTL-Shop 10
Neu Neues Plugin - Solar Steuerfrei (Mehrwertsteuerbefreiung nach §12 Abs. 3 UStGt für Solar- und Photovoltaikanlagen) Plugins für JTL-Shop 8
Neu Plugin Mail senden - Cc / Bcc Technische Fragen zu Plugins und Templates 4
Neu [Gelöst] IT Rechtskanzlei AGB Plugin Fehler "Plugin wurde nicht gefunden" Plugins für JTL-Shop 4
Neu neues Paypal-Checkout (plugin) verhindert Bestellung - keine Zahlungsarten angezeigt (hängt) Betrieb / Pflege von JTL-Shop 8
Neu Problem mit Plugin-Aktivierung und WooCommerce-Kompatibilität WooCommerce-Connector 2
Neu CiN TrackID-Import Plugin User helfen Usern - Fragen zu JTL-Wawi 12

Ähnliche Themen