ich hab da mal eine Frage zur Herkunftsurl. Ich benötige für eine IF else anweisung die Variable von der HerkunftsUrl, woher der Kunde auf unseren Shop gekommen ist alternative würde mir auch die URL der Landingpage mit den Parametern reichen. Weiß jemand welche Smartyvariable dafür zuständig ist oder wie ich diese finden kann.
Und wenn er übertragen wird, läufst Du schnell in die Cache-Falle, wenn der http-cache aktiviert ist (smarty => theme ???)
Müsste dann also am besten in einem eigenem widget abgefragt werden.
Über den {$smarty.server.HTTP_REFERER} kann ich zwar die letzte berührte url ausgeben aber leider nicht die Erste. Diese wechselt permanent sobald man auf irgendenen weitern Artikel klickt. Schön wäre es wenn ich bis zum Sale irgendwie an die Erste URL kommen könnte auf die der Kunde gekommen ist.
da musst du wohl über ein eigenes Plugin gehen. Dort kannst du den HTTP_REFERER in die Session speichern und die Session entweder über smarty auslesen oder eine eigene Variable für das Template bereitstellen.
Der Wert MÜSSTE aber eigentlich irgendwo in der SESSION schlummern, denn unter “Marketing => Auswertungen” gibt es auch den Punkt “Umsatz nach Referrer”.
Man müsste sich also via modifier mal die Session ins Theme holen und einen Dump machen.
Das geht mir dann zu sehr in die Mechanik ich habe weder ein Plugin bis dato geschrieben noch so viel ahnung von Shopware das ich das alleine stemmen könnte.
Vielleicht erkläre ich ganz kurz mein anliegen was ich damit vor habe evtl gibt es dazu ja schon eine Lösung.
Ganz knapp wird es benötigt für eine Cookie-weiche. Damit wollte ich ansteuern über welche Seiten UTM-Parameter usw der Kunde kommt. Somit sollten dann die Affiliate-Pixel angesteuert werden welcher greifen darf, damit keine doppelte Berechnung erfolgt.
Der Pixel sollten dann im Checkout/finish durch die Abfrage der Quell/Herkunftsseite richtig gewählt werden.
Da gibt es leider keine schnelle Hilfe für Dich!
Hier sind einfach ein paar wesentliche Dinge zu beachten, insbesondere die Problematik “Http-Cache”.
Bist Du im “Produktivmodus”, ist der HTTP-Cache an. Und hier greift Deine Weiche dann eben nur beim ersten Aufruf, danach kommt alles aus dem Cache, bis dieser mal geleert wird. Also müssten relevanten Stellen im Theme durch ein action-Tag eingebunden werden, und dafür benötigst Du dann einen eigenen kleinen Controller…
Also keine schnelle Lösung - viel Aufwand wäre das nicht unbedingt, wenn man ein wenig “in der Materie steckt”, und selber ein kleines Plugin baut.
Im Store suchen - ggf. gibt es doch ein passendes PlugIn
Ein Plugin entwickeln lassen - mit Abstand die teuerste Lösung – Kosten-Nutzen-Rechnung
Sich Zeit nehmen, und in die PlugIn-Entwicklung einarbeiten – dauert am längsten, spart aber Geld, wenn man Eigenleistung aktivieren möchte
Ggf. könnte man Dein Problem auch mit einfachen Theme-Anpassungen und “Auslagerung der Logic” in JavaScript lösen.
EDIT:
Checkout/Finish sollte ja eigentlich ohne Cache laufen - da sollte es dann ohne Probleme mit der Var von enerSpace gehen, wenn sie die richtige ist. Also dort nur durch Theme-Anpassung
wie bereits beschrieben, wird das vermutlich gecached. Für einen test musst du vorher den Cache löschen und per Link von einer anderen Seite kommen.
Ich habe unter der folgenden URL: https://www.shopwaredemo.eu den Shopware Profiler von “Friends of Shopware” installiert und den Cache deaktiviert. Wenn du auf die untere Leiste drückst und dann auf: Request / Response -> Session drückst, solltest du dann den sReferer sehen. Zudem wird er auch oben links auf der Seite angezeigt (Die Seite muss nach dem Besuch nochmal neugeladen werden, da die Sessionvariable erst beim zweiten mal greift)
Wenn du das so implementierst wie das Sonic vorgeschlagen hat, sollte das funktionieren.