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.102
685
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.102
685
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
44
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 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 15
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 31
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 Plugin: WooCommerce Wallet oder Gutscheine mit JTL nutzen - Fehler in der MwSt User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL Plugin fuer Wordpress Plugin wirft Error/success Fehler WooCommerce-Connector 2
Neu JTL Google Shopping Plugin - Bilder Updaten Plugins für JTL-Shop 3
Neu Wie andere Länder und Sprachen vom Google Shopping Plugin mit dem Merchant Center verbinden Plugins für JTL-Shop 6
Neu Frage zu Plugin Entwicklung : IO Request im Admin Technische Fragen zu Plugins und Templates 2
Neu Google Shopping Plugin - Artikel filtern Plugins für JTL-Shop 3
Neu Rollenbasiertes Kunden-Plugin (B2B) Plugins für JTL-Shop 1
Neu Frage zur Plugin Entwicklung Plugins für JTL-Shop 3
Neu Eigenes Plugin und der cache.. Plugins für JTL-Shop 3
WAWi Workflows mit Zahlungen als Bedingung funktioniert nicht JTL-Workflows - Fehler und Bugs 0
Neu Bestellungen werden als bezahlt markiert WooCommerce-Connector 0
Neu EXTF csv Datev als eigenen Export, statt Ameise? Einzeldifferenzbesteuert! User helfen Usern - Fragen zu JTL-Wawi 2
Gutschrift bzw Rechnungskorrektur größer als neuer Auftrag JTL-Wawi 1.9 2
Neu JTL Artikel auf Shopify als Varianten anzeigen Shopify-Connector 2
Neu List & Label - Eigene SQL-Abfrage als Grundlage für Tabelle im Berichtscontainer? User helfen Usern - Fragen zu JTL-Wawi 10
Neu Voraussichtliches Lieferdatum aus Auftrag als Rechnungsdatum/Leistungsdatum Arbeitsabläufe in JTL-Wawi 1
Neu POS Aufträge in der Wawi nicht abgeschlossen, stehen somit im Versand als "offen" JTL-POS - Fehler und Bugs 1
Neu Ameise-Vorlage per SQL abrufen und Daten als Ergebnis erhalten JTL Ameise - Eigene Exporte 1
Neu Shop 5.4.0: Zahlungsarten nun als Position in der Wawi? JTL-Shop - Ideen, Lob und Kritik 16
Lieferanten Rechnungen als bezahlt markieren JTL-Wawi 1.8 0
Neu Artikel mit Zustand beschädigt wird nicht als eigenständiger Artikel in der WaWi angezeigt User helfen Usern - Fragen zu JTL-Wawi 1
Neu Gibt es einen Import von Artikeltexten die pro Artikel als .txt geliefert werden? JTL-Ameise - Ideen, Lob und Kritik 1
Neu JTL-Worker als Windows-Dienst - wie macht Ihr das? User helfen Usern - Fragen zu JTL-Wawi 8
Neu Export von Buchungsdaten zur Differenzbesteuerung als CSV Datei Schnittstellen Import / Export 0
Neu Durchschnittlichen EK der letzten 3 Monate als Übersicht Eigene Übersichten in der JTL-Wawi 17
Neu Skonto bei Zahlung nicht erkannt. Rechnung bleibt dauerhaft als teilbezahlt. User helfen Usern - Fragen zu JTL-Wawi 7
Neu JTL Shipping: Straße 2 1/2 kommt als 212 bei DHL im Shipping Label an JTL-ShippingLabels - Fehler und Bugs 1
Packliste als CSV exportieren JTL-Wawi 1.9 9
Neu SQL Abfrage - Sendungsnummern als Liste nach Datum Schnittstellen Import / Export 2
Neu Bestandskunden JTL Wawi als Kundenaccounts Woocommerce anlegen WooCommerce-Connector 3
Neu FBA Anlieferung aus der JTL-Wawi heraus --> Firmenname in der Absenderadresse wird nur noch als "-" dargestellt Amazon-Anbindung - Fehler und Bugs 1
Neu Gebinde wie angelegt unter sonstiges als Barcode ausgeben Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 11
Neu Aufruf Ameise als Batch JTL-Ameise - Ideen, Lob und Kritik 0
Amazon FBA Gutschrift als Rechnungskorrektur? JTL-Wawi 1.9 1

Ähnliche Themen