Piwik "Plugin" als Template

basti

Gut bekanntes Mitglied
12. September 2007
774
12
Hallo zusammen

ich habe mir gerade die letzte Nacht mit Piwik und dem Trackingcode für Ecommerce und Goals um die Ohren geschlagen.
Heraus kam dabei eine kleine Template-Erweiterung, die im Footer inkludiert werden mus, nur ein paar Variablen müssen angepasst werden.

Wer hat Interesse daran?
Ich würde diese Template-Erweiterung erstmal an "Beta-tester" per Mail versenden, usner Shop ist noch nicht "scharf" daher wären ein paar Tester ganz gut.

Später nach den ersten Tests und Rückmeldungen stelle ich die "Erweiterung/den Code" hier frei zur Verfügung....

Standarderweiterungen und Verbesserungsvorschläge sind natürlich immer "drin"...

Bei Interesse bitte kurz per PN melden.
 

basti

Gut bekanntes Mitglied
12. September 2007
774
12
AW: Piwik "Plugin" als Template

ohne Frontend und solche Sachen, das brauch ich nicht ;)
Nur das eCommerce Tracking und das GoalTracking.

Wie das in eurem Plugin gelöst wurde entzieht sich meiner Kenntnis, da ich das Plugin nicht habe.

Es geht mir nur um das Tracking und da dies von JTL leider noch nicht eingebunden wurde (meiner Meinung nach Standard), habe ich es halt mal kurz selber in ein kleines Template geschrieben, das normal alle Bestellrelevanten Dinge abdecken sollte.
 

basti

Gut bekanntes Mitglied
12. September 2007
774
12
AW: Piwik "Plugin" als Template

So, da unser Shop endlich online ist, konnte ich unser Piwik-Template ausführlich testen.
Wie vor langem versprochen, anbei meine Lösung für die "einfache" Integration von Piwik.
Wer will darf den Code gerne benutzen und auch weiterverändern.

Zwischenzeitlich habe ich den Code auch noch komplett auf Piwik-Async umgestellt

Wenn JTL will, könnt Ihr den Tracking-Code auch gerne ins Standardtemplate (Tiny) mit den entsprechenden Schaltern integrieren.

Garantie übernehme ich natürlich keine, bei uns läuft der Code aber so seit 2 Tagen im produktiven Shop ohne Fehler.

Wenn jemand Fehler/Probleme entdeckt, bitte meldet Euch, damit wir den Code anpassen können oder den Fehler suchen.
Erweiterungen sind natürlich auch gerne gesehen....

Also Bei Fragen einfach melden...

Zum Einbinden:
Ich habe den ganzen Code in ein eigenes tpl (z.B. tpl_inc/piwik.tpl)
und dieses tpl im footer vor </body> per {include file='tpl_inc/piwik.tpl'} eingebunden.

Im Piwik müsst Ihr nur noch Eure Domain anlegen und die entsprechenden Goals anlegen, die IDs dann noch im piwik.tpl anpassen und fertig.

und jetzt der Code:
Code:
<!-- Piwik -->
{*Piwik PageID*}
{assign var="piwikID" value="1"}
{*Piwik Domain*}
{if $smarty.server.HTTPS eq "on"}
    {assign var="piwikDomain" value="https://www.euredomain.de/piwik/"}
{else}
    {assign var="piwikDomain" value="http://www.euredomain.de/piwik/"}
{/if}
{*
Piwik Goals
- empty if not used
- add Goals in Piwik => insert ID here
*}
{assign var="piwikGoal_register" value="4"}
{assign var="piwikGoal_cart" value="5"}
{assign var="piwikGoal_selectaccount" value="6"}
{assign var="piwikGoal_orderunregistered" value="7"}
{assign var="piwikGoal_shippingaddress" value="8"}
{assign var="piwikGoal_payment" value="9"}
{assign var="piwikGoal_confirm" value="10"}
{assign var="piwikGoal_startpage" value="11"}


{literal}
<script type="text/javascript">
  var _paq = _paq || [];
  
  
{/literal}
    {*order TODO Test*}
    {if $Bestellung->kBestellung>0 && $AktuelleSeite == "BESTELLVORGANG"}
	{foreach name=pos from=$Bestellung->Positionen item=Position key=counter}
	    {if $Position->kArtikel > 0}
		{*_paq.push(['addEcommerceItem',
"9780786706211", // (required) SKU: Product unique identifier
"Endurance: Shackleton's Incredible Voyage", // (optional) Product name
"Adventure Books", // (optional) Product category. You can also specify an array of up to 5 categories eg. ["Books", "New releases", "Biography"]
8.8, // (recommended) Product price
1 // (optional, default to 1) Product quantity
]);*}
		_paq.push(['addEcommerceItem', "{$Position->cArtNr}", "{$Position->Artikel->cName}", "", {$Position->Artikel->Preise->fVK[0]}, {$Position->nAnzahl}]);
	    {/if}
	{/foreach}
	{*_paq.push(['trackEcommerceOrder',
	"A10000123", // (required) Unique Order ID
	35, // (required) Order Revenue grand total (includes tax, shipping, and subtracted discount)
	30, // (optional) Order sub total (excludes shipping)
	5.5, // (optional) Tax amount
	4.5, // (optional) Shipping amount
	false // (optional) Discount offered (set to false for unspecified parameter)
	]);*}
	_paq.push(['trackEcommerceOrder', "{$Bestellung->cBestellNr}", {$Bestellung->fGesamtsumme}, {$Bestellung->fWarensumme}, {$Bestellung->fSteuern}, {$Bestellung->fVersand}, false ]);
    {*cart*}
    {elseif $smarty.session.Warenkorb->PositionenArr}
	{foreach name=pos from=$smarty.session.Warenkorb->PositionenArr item=Position key=counter}
	    {if $Position->kArtikel > 0}
		{*_paq.push(['addEcommerceItem',
"9780786706211", // (required) SKU: Product unique identifier
"Endurance: Shackleton's Incredible Voyage", // (optional) Product name
"Adventure Books", // (optional) Product category. You can also specify an array of up to 5 categories eg. ["Books", "New releases", "Biography"]
8.8, // (recommended) Product price
1 // (optional, default to 1) Product quantity
]);*}
		_paq.push(['addEcommerceItem', "{$Position->cArtNr}", "{$Position->Artikel->cName}", "", {$Position->Artikel->Preise->fVK[0]}, {$Position->nAnzahl}]);
	    {/if}
	{/foreach}
	_paq.push(['trackEcommerceCartUpdate',{$WarenkorbGesamtsumme[0]|replace:".":""|replace:",":"."|replace:" &euro;":""}]); // (recommended) Cart amount
    {/if}
	
    {if $AktuelleSeite == "PRODUKTE"}
	{*Produktuebersicht*}
    {elseif $AktuelleSeite == "ARTIKEL"}
	_paq.push(['setEcommerceView', "{$Artikel->cArtNr}", "{$Artikel->cName}", ""{*category*}, {$Artikel->Preise->fVK[0]}]);
    {elseif $AktuelleSeite == "STARTSEITE"}
	_paq.push(['trackGoal', {$piwikGoal_startpage}]);
    {elseif $AktuelleSeite == "REGISTRIEREN" && $piwikGoal_register > 0}
	_paq.push(['trackGoal', {$piwikGoal_register}]);
    {elseif $AktuelleSeite == "WARENKORB" && $piwikGoal_cart > 0}
	_paq.push(['trackGoal', {$piwikGoal_cart}]);
    {elseif $AktuelleSeite == "BESTELLVORGANG"}
	{if $step == "accountwahl" && $piwikGoal_orderunregistered > 0}
	    _paq.push(['trackGoal', {$piwikGoal_selectaccount}]);
	{elseif $step == "unregistriert bestellen" && $piwikGoal_orderunregistered > 0}
	    _paq.push(['trackGoal', {$piwikGoal_orderunregistered}]);
	{elseif $step == "Lieferadresse" && $piwikGoal_shippingaddress > 0}
	    _paq.push(['trackGoal', {$piwikGoal_shippingaddress}]);
	{elseif $step == "Zahlung" && $piwikGoal_payment > 0}
	    _paq.push(['trackGoal', {$piwikGoal_payment}]);
	{elseif $step == "Bestaetigung" && $piwikGoal_confirm > 0}
	    _paq.push(['trackGoal', {$piwikGoal_confirm}]);
	{else}
	    {*alert("aktuelle Seite Bestellvorgang: {$AktuelleSeite}\r\nStep:{$step}");*}
	{/if}
    {else}
	{*//alert("unknown page: {$AktuelleSeite}");*}
    {/if}
    _paq.push(['trackPageView']); 
    _paq.push(['enableLinkTracking']); 
    {literal}

  (function() {
    var u="{/literal}{$piwikDomain}{literal}";
    _paq.push(["setTrackerUrl", u+"piwik.php"]);
    _paq.push(["setSiteId", "{/literal}{$piwikID}{literal}"]);
    var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript";
    g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s);
  })();
</script>
{/literal}
<noscript><p><img src="{$piwikDomain}piwik.php?idsite={$piwikID}" style="border:0" alt=""></p></noscript>
<!-- End Piwik Tag -->
 

ram1

Sehr aktives Mitglied
22. Juli 2009
1.116
7
AW: Piwik "Plugin" als Template

Grandios :)

Hab's mal auf unserem lokalen Testshop installiert, funktioniert mit den ersten Testläufen einwandfrei. Auch abgebrochene Kaufvorgänge werden getrackt.
 

basti

Gut bekanntes Mitglied
12. September 2007
774
12
AW: Piwik "Plugin" als Template

ok, super,
falls irgendwelche Probleme auftauchen einfach melden...

P.S. Natürlich würden wir uns freuen, wenn diejenigen, die das Template nutzen, uns einen Link zu unserem Shop "spenden"... bei Interesse bitte einfach ein Mail an uns
 

ram1

Sehr aktives Mitglied
22. Juli 2009
1.116
7
AW: Piwik "Plugin" als Template

Kurze Frage vorab zur Verlinkung... grundsätzlich mache ich das natürlich sehr gerne, schon alleine aus Respekt vor deiner Arbeit.

In welcher Branche bist Du denn tätig? Könnte etwas kritisch sein wenn wir direkte Mitbewerber sind, dann müsste man sich was anderes überlegen ;)

Cheers,
Gert

PS: Dein Postfach hier ist voll.
 

John

Sehr aktives Mitglied
3. März 2012
3.222
719
Berlin
AW: Piwik "Plugin" als Template

Interessant, habe ich auch mal bei mir eingebaut.

Warum trackst Du die Kategorie nicht?

Code:
{if $AktuelleSeite == "PRODUKTE"}
     {*Produktuebersicht*}

Ich habe das mal eingefügt mit:

Code:
{if $AktuelleSeite == "PRODUKTE"}
     {*Produktuebersicht*}
     _paq.push(['setEcommerceView',
        productSku = false, // No product on Category page
        productName = false, // No product on Category page
        category = "{$oNavigationsinfo->cName}" // Category Page, or array of up to 5 categories
      ]);
 

basti

Gut bekanntes Mitglied
12. September 2007
774
12
AW: Piwik "Plugin" als Template

Hm, das habe ich irgendwie vergessen ;)
Das war für uns uninteressant..
soll ichs kurz einbauen? Dürfte eigtl kein großes Problem sein....
 

John

Sehr aktives Mitglied
3. März 2012
3.222
719
Berlin
AW: Piwik "Plugin" als Template

Mir ist nur aufgefallen, daß die Ansicht

Ziel Ecommerce Konversionen nach Besuchstyp > Ecommerce Berichte > Produktkategorie nur ein "Produktkategorie nicht definiert" liefert

Insofern macht einbauen schon Sinn!
 

mrstefan

Aktives Mitglied
9. Dezember 2008
45
0
AW: Piwik "Plugin" als Template

Hallo ihr beiden,
an welcher Stelle müsste ich den das neue Code Schnipsel einfügen?
Besten Dank vorab!
 

basti

Gut bekanntes Mitglied
12. September 2007
774
12
AW: Piwik "Plugin" als Template

Hallo pgeiss
ich weiß noch nicht, wann ich dazu komme...
es sind gerade viele andere Baustellen offen...
ich hoffe es diese Woche mal kurz einzubauen...
 

chd

Aktives Mitglied
4. Dezember 2012
37
4
AW: Piwik "Plugin" als Template

Hallo Basti,

könntest Du vielleicht noch schreiben welche Goals Du wohin angelegt hast?

Christian
 

basti

Gut bekanntes Mitglied
12. September 2007
774
12
AW: Piwik "Plugin" als Template

ohne Garantie, da schon ne Weile her:
{assign var="piwikGoal_register" value="4"}
Kudnenregistrierung
{assign var="piwikGoal_cart" value="5"}
Warenkorb
{assign var="piwikGoal_selectaccount" value="6"}
Accountwahl
{assign var="piwikGoal_orderunregistered" value="7"}
Unregistriert bestellen
{assign var="piwikGoal_shippingaddress" value="8"}
Versandadresse
{assign var="piwikGoal_payment" value="9"}
Zahlart
{assign var="piwikGoal_confirm" value="10"}
Bestätigung
{assign var="piwikGoal_startpage" value="11"}
Startseite

Gruß Basti
 

chd

Aktives Mitglied
4. Dezember 2012
37
4
AW: Piwik "Plugin" als Template

Danke Basti.

Hätte ich mir die Doku zur Piwik-API vorher angeschaut, wäre ich auch selbst drauf gekommen ...

Wenn ich Dir noch eine Erweiterung vorschlagen darf: Schön wäre wenn die Kampagnen aus JTL auch als solche in Piwik getrackt werden würden. Keine Ahnung ob das geht.

Viele Grüße
Christian
 

bugslockstore

Aktives Mitglied
10. August 2012
18
0
Österreich, Vlbg.
AW: Piwik "Plugin" als Template

Hallo Basti,

erst mal herzlichen Dank für deine hervorragende Arbeit.

[Hm, das habe ich irgendwie vergessen
Das war für uns uninteressant..
soll ichs kurz einbauen? Dürfte eigtl kein großes Problem sein..../QUOTE]

Hast du das vielleicht schon eingefügt und könntest du uns das nochmal zur Verfügung stelle.

Viele Grüße
Elrico
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Worüber Klarna am besten nutzen? Mollie oder Plugin? User helfen Usern - Fragen zu JTL-Wawi 1
Voucher Guthaben Payment Plugin Berechnen Allgemeine Fragen zu JTL-Vouchers 0
Neu Plugin für Bundles gesucht Plugins für JTL-Shop 4
Neu GPSR Plugin wird nicht bei allen Artikeln angezeigt Plugins für JTL-Shop 18
Neu GPSR Plugin Formatierung anpassen. Plugins für JTL-Shop 8
Neu GPSR Plugin Installation haut nicht hin Plugins für JTL-Shop 2
Neu 📢 Plugin "Verbotene Artikel: Kauf nur für richtige Kundengruppe" by NETZdinge.de Plugins für JTL-Shop 0
Neu GPSR Plugin Format Fehler Plugins für JTL-Shop 0
Neu Payment plugin order number Plugins für JTL-Shop 0
Plugin: JTL Exportformat Google Shopping - Mindermengenzuschlag Einrichtung JTL-Shop5 0
Neu Nach Update auf JTL GPSR-Plugin 1.0.3 vom Backend ausgeschlossen Plugins für JTL-Shop 25
Beantwortet Plugin Dev: Setting-Links Spacer Problem (info.xml) JTL-Shop - Fehler und Bugs 1
Neu Paypal Plugin wird von akutellen IOS Geräten nicht geladen Plugins für JTL-Shop 17
Neu Warnung bei Paypal Plugin Plugins für JTL-Shop 4
Neu Klarna Plugin mit JTL Shop 5.4.0 lässt Pay Now nicht zu Plugins für JTL-Shop 10
Neu WARNUNG JTL GPSR Plugin 1.0.2 funktioniert nicht, wenn Artikel keine Beschreibung hat Plugins für JTL-Shop 20
Neu Neues Datatrans-Plugin als Alternative zu CustomWeb/Sellxed – inkl. Twint, PostFinance und PowerPay 🚀 Plugins für JTL-Shop 0
Neu GPSR mit JTL Wawi + Plugin JTL-Wawi - Fehler und Bugs 5
Neu Zahlung Kreditkarte nicht möglich (Paypal Plugin) JTL-Shop - Fehler und Bugs 5
Neu KI-Plugin für JTL-Shop - Eure Meinung ist gefragt! 🚀 🤖 Plugins für JTL-Shop 0
Neu GPSR-Plugin ignoriert Hersteller-Firmenangabe JTL-Shop - Fehler und Bugs 5
Welche GPSR Plugin-Einstellungen mit WaWi 1.9.6.1 JTL-Wawi 1.9 8
Neu Felder vom neuen Plugin importieren möglich? Shopware-Connector 0
Neu GPSR Plugin für Gambio Connector steht bereit Gambio-Connector 0
Neu DRINGEND Hilfe - Google Analytics Plugin JTL-Shop - Fehler und Bugs 4
Neu PlugIn: JTL GPSR Plugins für JTL-Shop 32
Neu Plugin Suche: Mailchimp Plugins für JTL-Shop 0
Neu Plugin mit transparentem Hintergrund (Auswahlassistent) Plugins für JTL-Shop 1
Neu Probleme mit PayPal-Plugin: Bestellungen "pending" & doppelte Zahlungen nach Direktzahlung Plugins für JTL-Shop 0
Neu Template Dateien Rendern im Plugin Plugins für JTL-Shop 6
Neu 🎉 Neues Plugin: "Versandkosten und Lieferzeit automatisch beziehen - ShipMonk Extension" 🎉 Plugins für JTL-Shop 1
Neu 🎉 Neues Plugin: "Versandkosten und Lieferzeit automatisch beziehen - DHL-Express Extension" 🎉 Plugins für JTL-Shop 3
Neu S: Plugin Dropdown-Menü für meine Kategorien Plugins für JTL-Shop 10
Neu "Warenkorb teilen als Link" Plugin by Visitmedia Plugins für JTL-Shop 2
Neu Das JTL Shop gratis Plugin GPSR Verordnung - sieht mies aus, belastet die Datenbank, Excel Bearbeitung unmöglich Betrieb / Pflege von JTL-Shop 30
Neu PAYONE Plugin keine Bestellabschluss Seite Plugins für JTL-Shop 0
Neu 📢 Neues Plugin: "GPSR Herstellerinformationen" 📢 Plugins für JTL-Shop 44
Neu Anbindung an Idealo mit Plugin gesucht Schnittstellen Import / Export 1
Neu Mollie Plugin und stornierte "Klarna Pay Later" Zahlungsaufforderungen. Plugins für JTL-Shop 0
Neu Aufträge über WaWi App als bezahlt markieren JTL-Workflows - Ideen, Lob und Kritik 1
Neu Pickliste für Aufträge mit mehr als einem Artikel aus verschiedenen Lagerbereichen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Artikeletikette als JPG speichern Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 7
Neu Artikel werden als online in der WAWI angezeigt sind es aber nicht! Shopware-Connector 0
Neu Probleme mit paypal / ZAhlung als nicht autorisiert zurückgewiesen JTL-Shop - Fehler und Bugs 6
Beantwortet Listing als Default ansicht einstellen Betrieb / Pflege von JTL-Shop 2
Neu Zusammenführung von XML und PDF, XML als Anhang einfügen Arbeitsabläufe in JTL-Wawi 4
XRechnung: Vorgang.Auftrag.Anmerkung als "Weitere rechtliche Informationen" einbauen JTL-Wawi 1.9 2
Neu Ab Preise Darstellung als netto bei Kunden mit UID Allgemeine Fragen zu JTL-Shop 5
Neu Eigenes Feld Checkbox im Artikel als Darstellungsbedingung auf Rechnungsvorlage Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
In Bearbeitung Retoure erstellen nach 1 Woche in Wawi mit Sumup als Zahlungsanbieter Allgemeine Fragen zu JTL-POS 3

Ähnliche Themen