Wer eine Website betreibt, sollte auch wissen, wie gut sie performt. Wer das nicht tut, betreibt digitalen Suizid. Analytics-Programme sind also Pflicht.
Webtracking geht mittlerweile allerdings weit über das Erfassen der Seiten, auf denen sich die Nutzer befinden hinaus. Wer weiß, was er mit seiner Seite im Internet erreichen will (Zielorientierung!), hat sich sicherlich schon einmal mit dem Tracking von Conversions befasst. Der Begriff Conversion hat sich in den Köpfen mittlerweile fest als Verkauf etabliert. Eine Conversion ist allerdings viel allgemeiner die Erreichung eines gesetzten Ziels. Diese können um ein Vielfaches trivialer sein. Beispielsweise der Klick auf einen Download. Oder aber das Erreichen einer bestimmten Besucherzahl. Oder aber auch das Absenden eines Kontaktformulars.
Nicht jede Webseite verkauft auch direkt. Und nicht jeder, der Online-Shop-Software einsetzt besitzt auch einen Checkout. Zuweilen sind ausgefüllte Kontaktformulare (z.B. für eine Anfrage oder eine konkrete Angebotsaufforderung) das Hauptziel einer Webpage. Um Sinn und Unsinn überfrachteter Formulare und Optimierungsmöglichkeiten in den Formularen soll es hier nicht gehen. Eher um das Tracking eben dieser.
Magento präsentiert dem Käufer nach dem Checkout eine Bestätigungsseite, auf der er über seine Bestellung noch einmal informiert wird. Diese Bestätigungsseite ist in einem Template erfasst (Pfad: /app/design/frontend/default/[templatename]/template/checkout/success.phtml) und kann somit vergleichsweise einfach angepasst werden. Zumindest lassen sich hier Conversion Tracking Codes relativ einfach einbauen.
Problem
Wer solch eine Möglichkeit auch für abgesendete Kontaktformulare sucht, wird enttäuscht. Die Bestätigung für das abgesendete Kontaktformular wird nicht aus einem Template generiert, sondern die Bestätigung wird auf der gleichen Formularseite einfach nur ausgegeben. Im Ordner /app/design/frontend/default/[templatename]/template/contacts findet sich nur die form.phtml. Hier kann man das Conversion Tracking nicht einbauen, da dann bei jedem Formularaufruf eine Conversion getrackt würde.
Lösung
Es gibt mehrere Lösungen. Wenn es sich allein um das Tracking im Google Analytics handelt, ließe sich ein Event auf den Senden-Button legen und somit ein Ziel an Analytics übertragen. Ganz sauber ist diese Lösung auch nicht, da hier der Klick und nicht die erfolgreiche Formularübermittlung getrackt wird.
Sauberer ist die Lösung, einen Redirect auf eine separate Landing Page zu erzeugen, eben so wie es Magento auch beim vollständigen Checkout macht.
Hier muss man aber wohl oder übel an den Magento Core heran. Die Änderungen halten sich aber in engen Grenzen.
- Änderung des Redirects auf eine Magento-CMS-Seite
- Erzeugung der CMS-Seite
- Hinzufügen des Tracking-Codes in die CMS-Seite
Der Controller für die Kontaktseite muss angepasts werden. Dieser findet sich unter app/code/core/Mage/Contacts/controllers/IndexController.php.
Hier muss nun folgende Zeile gesucht werden:
$this->_redirect('*/*/');
Diese wird umgeändert in:
$this->_redirect('*/success/');
Anstatt success kann jede beliebige CMS-Seite/URL genommen werden. Der Einfachheit und Konsistenz halber (die Bestellbestätigungsseite lautet auch success) nehmen wir an der Stelle success.
Nun muss noch eine CMS-Seite im CMS-Editor erstellt werden (CMS > Seiten verwalten > Neue Seite anlegen). Als URL-Bezeichner sollte contacts/success gewählt werden, damit der vorher gewählte Redirect auch funktioniert. Gestaltet werden kann die Seite nach Gutdünken, für die reine Funktionsweise ist ausschließlich die URL wichtig.
Über den HTML-Editor lässt sich beliebiger Code in die CMS-Seite integrieren. Eben auch AdWords-Code. Denkbar sind hier aber auch Events/Ereignisse, die in Google Analytics festgelegt werden können.
Beim Abschicken des Kontaktformulars wird der Nutzer nun auf eine separate Seite /contacts/success weitergeleitet, welche im Analytics-Tools als Ziel festgelegt werden kann.





