Neu JS in Template Datei einfügen

Hanseo

Mitglied
29. Dezember 2017
5
0
Hallo Board,
ich bin kompletter Newbie was JTL betrifft. Ich habe mit mehreren Suchen hier im Forum nach einer Antwort gesucht, aber keine gefunden. Ich möchte nahe am <head> Tag JavaScript-Code einfügen. Ich habe einiges probiert, z.B. den Evo Theme Editor, aber es hat nicht funktioniert. Ich kann per FTP auf den Shop zugreifen, weiß aber nicht, welche Datei ich editieren muss. Kann mir jemand dabei helfen?
 

DrGreen

Gut bekanntes Mitglied
24. Dezember 2017
147
16
Hallo Hanseo,

was möchtest du denn einfügen bzw. damit erreichen.

Ich habe zum Beispiel einen Chat auf meiner Webseite, da musste ich auch ein JavaScript einfügen und habe das einfach unter Boxenverwaltung -> Footer gemacht.

Einfach eine neue Box (Eigene Box) erstellen und auf bearbeiten gehen. Dann umstellen auf HTML Code-Ansicht, Sript einfügen, speichern und lief.

Wenn du dich nicht so gut damit auskennst möchte ich dir davon abraten direkt in den Dateien etwas zu verändern.
 

Hanseo

Mitglied
29. Dezember 2017
5
0
HalloDrGreen und Tom,
es geht um Trackingcode der Suchmaschine Yandex. Der sollte möglichst nahe am Kopf der Seite eingefügt werden, damit er zuerst geladen wird. Gibt es nicht ein .tpl-Datei, in der ich so etwas wie <head></head> finde? Der Aufbau von JTL Templates ist mir leider gar nicht vertraut.
 

nmueller

Sehr aktives Mitglied
5. April 2011
1.309
99
Saarland
Du könntest das JS in deinen Templateordner legen:

templates/dein-template/js/custom.js

Dann eine eigene header.tpl erstellen in:

templates/dein-template/layout/header.tpl

mit dem Inhalt

Code:
{extends file="{$parent_template_path}/layout/header.tpl"}
 
    {block name="head-meta" append}
    <script src="{$currentTemplateDir}js/custom.js"></script>
    {/block}
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
524
Halle
Hallo, die custom.js wird vom Evo automatisch über den Footer dynamisch eingebunden. Ein explizites Laden per header.tpl führt hier also zu Dopplungen!
 

dimdum

Aktives Mitglied
15. August 2007
11
0
Arnsberg
Hallo

ich versuche einen Java Code von dem Statistik Tool Piwik/ Matomo einzubinden.
Dies soll nach Möglichkeit direkt vor dem </head> ausgeführt werden.

Wenn ich es wie von nmueller beschreiben einfüge bekomme ich keine Daten ins System.
Ich hatte es schon mal in der head.tpl eingeführt aber dann wurden im Shop die Artikel und Serien Ansichten nicht richtig angezeigt.
Der Code (mal abgesehen von der Domain Kennung) funktioniert so schon in einem anderen CMS und ist direkt vom Hersteller so definiert.

wo könnte man diesen Code am sinnvollsten einfügen?

<!-- Matomo -->
<script type="text/javascript">
var _paq = _paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="//www.domain.de/";
_paq.push(['setTrackerUrl', u+'piwik.php']);
_paq.push(['setSiteId', '2']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->

Vielen Dank für Vorschläge im Voraus.

Gruß
Sebastian
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.477
288
@dimdum: Weil du im Script die geschweiften Klammern nicht escapest. Geschweifte Klammern werden auch in der Smarty-Syntax verwendet, daher wirst du hier zu 100% einen JS Fehler um die Ohren bekommen, daher kein Loggen der Zugriffe. Entweder du packst ein {literal} {/literal} um das gesamte Script oder du ersetzt alle { durch {ldelim} und alle } durch {rdelim}.
 

dimdum

Aktives Mitglied
15. August 2007
11
0
Arnsberg
Ich habe mir das Plugin für die 10 tägige Testphase mal eingebaut.
Was irritierend ist, dass im Shop Backend 200-500 Besucher am Tag angezeigt werden (JTL Standart Anzeige) aber in Piwik, dass über das Plugin eingebunden ist nur 2-3 Besucher am Tag...
Woran kann das liegen?
Anbei ein Screenshot aus Piwik und einer aus dem JTL Backend.
 

Anhänge

  • Bildschirmfoto 2018-03-03 um 08.29.46.png
    Bildschirmfoto 2018-03-03 um 08.29.46.png
    30,1 KB · Aufrufe: 28
  • Bildschirmfoto 2018-03-03 um 08.31.33.png
    Bildschirmfoto 2018-03-03 um 08.31.33.png
    20,9 KB · Aufrufe: 27

nmueller

Sehr aktives Mitglied
5. April 2011
1.309
99
Saarland
@FPrüfer

Hallo, die custom.js wird vom Evo automatisch über den Footer dynamisch eingebunden. Ein explizites Laden per header.tpl führt hier also zu Dopplungen!

Bei mir läd das auf der EVO basierende Custom Theme keine js Dateien "von selbst". Entweder, ich integriere die js in die Template-Dateistruktur und binde sie in meinem Template im Header oder Footer ein, oder ich erstelle daraus ein Plugin, welches die js über die XML läd.

Das hier war im Prinzip genau, was ich meinte..

In ein Custom-Theme und dann in eine modifizierte footer.tpl

Irgendwie haben wir uns hier glaube ich missverstanden, oder ich stehe auf dem Schlauch.

Btw. hätte ich wohl besser beispiel.js oder deine.js geschrieben - schätze du störst dich an der "custom.js" Formulierung, die von mir jetzt aber tatsächlich nicht in dem Zusammenhang angedacht war.
 
Zuletzt bearbeitet:

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
524
Halle
schätze du störst dich an der "custom.js" Formulierung, die von mir jetzt aber tatsächlich nicht in dem Zusammenhang angedacht war.
Genau das ist aber der Unterschied! Eine custom.js im Pfad /js des Child-Templates wird automatisch geladen und zwar GENAU diese! Für eine beispiel.js oder deine.js oder in anderen Pfaden abgelegte JS-Dateien gilt das nicht!
 

nmueller

Sehr aktives Mitglied
5. April 2011
1.309
99
Saarland
oki, ist natürlich richtig :) Hatte ich in dem Moment nicht mehr auf dem Schirm und "custom.irgendwas" ist ja doch eine gängige Formulierung für Beispiele. Mein Fehler.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Laden einer JS-Datei aus dem Nova im Child Template verhindern Templates für JTL-Shop 4
Neu Template Dateien Rendern im Plugin Plugins für JTL-Shop 6
Neu Child Template zieht die englischen Artikelbeschreibungen nicht Templates für JTL-Shop 3
Neu Artikelsticker mit Nova-Template Einrichtung von JTL-Shop4 11
Neu GPSR Verordnung - Wie handhabt ihr das im Shop mit dem Nova Template? Betrieb / Pflege von JTL-Shop 19
Neu jtl.evo.js über Child Template anpassen. Geht das? Technische Fragen zu Plugins und Templates 6
Neu Eigene Alerts im Template ausgeben bzw. hinzufügen Templates für JTL-Shop 0
Neu Child Template erstellen Technische Fragen zu Plugins und Templates 22
Neu Sonderzeichen aus Kundenname entfernen - Datei speichern - ErrorLog User helfen Usern - Fragen zu JTL-Wawi 3
Neu Vorlage Export Datei JTL Ameise - Eigene Exporte 10
Neu Export von Buchungsdaten zur Differenzbesteuerung als CSV Datei Schnittstellen Import / Export 0
Neu Hilfe bei CSV-Datei mit Erscheinungsdatum im Format KW/2024 User helfen Usern - Fragen zu JTL-Wawi 1
Von Workflow lokal gespeicherte Datei direkt wieder löschen lassen JTL-Wawi 1.8 1
Neu Veranddatum in Nachforschungsantrag einfügen Gelöste Themen in diesem Bereich 5
Neu Paket X von Y auf Shippinglabel einfügen - GLS Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0

Ähnliche Themen