Zum Inhalt springen

Powermail - "mandatory" beißt sich mit Google AdWords-code

Erstellt am 7. April 2009 · 14 Antworten · letzte Antwort am 11. August 2009

Tags: Powermail, JavaScript & AJAX, Frage

BrazilBen ·

Liebe Powermail-Spezialisten (vor allem natürlich Alex),
In meinem Powermail-thx-template habe ich einen neuen Marker (###POWERMAIL_TYPOSCRIPT_ADWORDS-CODE###) gesetzt, mit dem ich sprachabhängig via Typoscript einen Google Adwords Conversion Code einlesen will.

Also z.B. für Portugiesisch:

plugin.tx_powermail_pi1.dynamicTyposcript {
  adwords-code = HTML
  adwords-code.value.lang.br (
    <script language="JavaScript" type="text/javascript">
    <!--
    var google_conversion_id = 1064689614;
    var google_conversion_language = "pt_BR";
    var google_conversion_format = "1";
    var google_conversion_color = "ffffff";
    var google_conversion_label = "juaRCJrVeBDOv9f7Aw";
    //-->
    </script>
    <script language="JavaScript" src="http://www.googleadservices.com/pagead conversion.js" type="text/javascript">
    </script>
    <noscript>
    <img height="1" width="1" border="0" src="http://www.googleadservices.com/pagead/conversion/1064689614/?label=juaRCJrVeBDOv9f7Aw&guid=ON&script=0" alt="" />
    </noscript>
  )
}

Funktioniert eigentlich auch. Wenn ich nun aber auch nur ein einziges Feld im Formular auf "mandatory" stelle, wird der AdWords-Code wird nicht mehr auf der thx-Seite ausgegeben.

Habe mal via Constants Stück für Stück versucht, die Powermail-JS einzuschränken, namentlich:

plugin.powermail.js.mandatorycheck = 0
plugin.powermail.js.onfocus = 0
plugin.powermail.js.Prototype = 0
plugin.powermail.js.HTMLentities = 0

Hilft aber alles nichts. Einzig das vollständige Abschalten aller mandatory-checkboxes in Powermail führt dazu, dass der AdWords Code ausgegeben wird.

Any ideas?
LG
Benjamin

BrazilBen ·

Hallo Alex,
Ja, doch, cache immer brav geleert.
Hier ein einfaches Besipiel:

Form mit drei Feldern:
* Name
* Email
* Submit

Wenn für keines dieser Felder "mandatory" gewählt wurde, bekomme ich folgenden HTML-code auf der thx-page:

...
<!--BEGIN: Content of extension "powermail", plugin "tx_powermail_pi1"	-->
<div class="tx-powermail-pi1">
<div class="tx-powermail-pi1_thx">
<table class="contenttable">
<!--  --><!--  -->
<tr class="powermail_all powermail_all_tr">
<td class="powermail_all powermail_all_td" valign="top"><p><b></b></p></td> 
<td class="powermail_all powermail_all_td" valign="top"><p></p></td>
</tr>
<!--  --><!--  -->
</table>
</div>
    <script language="JavaScript" type="text/javascript">
    <!--
    var google_conversion_id = 1064689614;
    var google_conversion_language = "pt_BR";
    var google_conversion_format = "1";
    var google_conversion_color = "ffffff";
    var google_conversion_label = "juaRCJrVeBDOv9f7Aw";
    //-->
    </script>
    <script language="JavaScript" src="http://www.googleadservices.com/pagead/conversion.js">
    </script>
    <noscript>
    <img height="1" width="1" border="0" src="http://www.googleadservices.com/pagead/conversion/1064689614/?label=juaRCJrVeBDOv9f7Aw&amp;guid=ON&amp;script=0"/>
    </noscript>
</div>
<!-- END: Content of extension "powermail", plugin "tx_powermail_pi1" -->
...

Wenn ich nun z.B. das Feld "Name" auf "mandatory" stelle, sieht der Code dann folgendermaßen aus:

<!-- BEGIN: Content of extension "powermail", plugin "tx_powermail_pi1"	-->
<div class="tx-powermail-pi1">
<div class="tx-powermail-pi1_mandatory">
<strong>There are some errors:</strong><br />
<ul class="powermail_mandatory_list">
<li class="powermail_mandatory_listitem"><strong>This field must be filled: <b>Name</b></strong></li></ul>
<form name="test_mandatory" action="601.html" method="post">
<input type="submit" value="Go back to the form" class="tx-powermail-pi1_mandatory_submit">
</form>
</div>
</div>
<!-- END: Content of extension "powermail", plugin "tx_powermail_pi1" -->

Übrigens merkwürdig: die eigentliche Information aus dem Marker ###POWERMAIL_ALL### sehe ich ganz normal im FE, im Quellcode der selben FE sehe ich sie jedoch nicht (siehe code oben)!

Liebe Grüsse - Benjamin

einpraegsam.​net ·

Äh ja das Problem ist mir eigentlich schon klar wenn ich deine Templates anschaue.
Du postest ja auch die Mandatory Page und nicht die THX Page in deinem Beispiel...

BrazilBen ·

Hi Alex,
Genau deshalb fand ich das ja auch merkwürdig...!
Also, der gepostete Code ist zumindest das, was mir sowohl Firefox als auch Chrome als Quellcode für die Thx-Page geben.

Hier noch mal Schritt für Schritt:

1. Powermail-Backend-Einstellung:

Bild: easydrop.com/…/thx-BE-PM.gif

2. Frontend-Ausgabe nach Absenden des Formulars:

Bild: easydrop.com/…/thx-output.gif

3. Frontend-Ausgabe für genau diese Seite (2.) in Firefox -> View -> Page-Source:

<!-- BEGIN: Content of extension "powermail", plugin "tx_powermail_pi1"	-->
<div class="tx-powermail-pi1">		
<div class="tx-powermail-pi1_mandatory">
<strong>There are some errors:</strong><br />
<ul class="powermail_mandatory_list">
<li class="powermail_mandatory_listitem"><strong>This field must be filled: <b>Name</b></strong></li>
</ul>
<form name="test_mandatory" action="601.html" method="post">
<input type="submit" value="Go back to the form" class="tx-powermail-pi1_mandatory_submit">
</form>
</div>
</div>
<!-- END: Content of extension "powermail", plugin "tx_powermail_pi1" -->

Ich stimme Dir vollkommen zu: der Code sieht nach Mandatory aus, und es ist mir schleierhaft, warum mir FF und Chrome selbigen als Quellcode für die Thx-Page verkaufen wollen.
Beachte aber: warum würde der Adwords-Code im Quellcode einer "Mandatory-Page" erscheinen, wenn er doch ausdrücklich erst in die Thx-Page geladen wird?

(siehe erstes HTML-code-Schnipsel aus meinem zweiten Post)

Sorry für Konfusion und Aufwand, entgeht mir vielleicht mal wieder was wesentliches?
Danke für die Geduld und liebe Grüsse
Benjamin

einpraegsam.​net ·

Sorry aber ich verstehe nur Bahnhof:

...There are some errors:
...
<li class="powermail_mandatory_listitem"><strong>This field must be filled: <b>Name</b></strong></li...

Das ist die Mandatory Seite - dort deinen Marker rein und gut ist's...

BrazilBen ·

Ok, Alex,
Jetzt habe ich es endlich begriffen: Marker gehört in das mandatory-Template, nicht in das thx-template, dann funktioniert alles perfekt!

Vielen Dank einmal mehr für die Lösung!
Kann ich mich mich revanchieren? (demnächst komme ich nach langen Jahren mal wieder nach DE, ich könnte Dir was mitbringen...)

Liebe Grüsse
Benjamin

BrazilBen ·

Ja, das hatte ich mir auch gedacht (mandatory + thx).

Heiße Brasilianerin: da bekomme ich womöglich Ärger am Zoll. Vielleicht was kleineres...
8-)

einpraegsam.​net ·
BrazilBen schrieb

Heiße Brasilianerin: da bekomme ich womöglich Ärger am Zoll. Vielleicht was kleineres...

Das ist schon in Ordnung - dafür ist das Forum da: Einer hilft dem anderen - That's it 🙂

c00lcarlos ·

Hallo,

dank Eurer Hilfe habe ich es endlich geschafft, die Conversation-Tracking unter Powermail zu installieren.

Wie funktioniert die ganze Sache mit mehreren Powermail-Instanzen ?

1x Kontaktformular
1x Bestellformular
etc. ?

Für jede Instanz ein eigenes template auslagern mit einen ###Marker### ?

Vielen Dank im Voraus für die Hilfe.

Grüße

einpraegsam.​net ·

Wir haben auf unserer Seite festgelegt, dass eine Konversion erreicht wurde, sobald irgendein Formular auf der Webseite ausgefüllt wurde.

Das ganze dann über conditions:

# Google conversation - Show code if Submit
lib.conversion = COA_INT
lib.conversion {
	10 = TEXT
	10.value (
		<script language="JavaScript" type="text/javascript">
			<!--
			var google_conversion_id = xxxx;
			var google_conversion_language = "de";
			var google_conversion_format = "3";
			var google_conversion_color = "ffffff";
			var google_conversion_label = "yyyy";
			if (50.0) {
	  			var google_conversion_value = 50.0;
			}
			//-->
		</script>
		<script language="JavaScript" src="http://www.googleadservices.com/pagead/conversion.js"></script>
	)
}

# Immer einblenden, wenn Formular abgesendet
[userFunc = user_powermail_step()]
	page.997 < lib.conversion
[end]

Oder noch einfacher:
Code ins HTML Template tmpl_thx.html schmeißen...

c00lcarlos ·

Hallo Einpraegsam,

vielen Dank für den Ansatz.

Bei unserer Kampagne ist es leider von Nöten, pro Formular eine gesonderte Konversion auszulösen. Jede Kampagne wirbt für ein anderes Produkt. Die Erfolgsmessung soll pro Kampagne ausgegeben werden.

Gibt es even. da noch eine andere Möglichkeit?

Vielen Dank

einpraegsam.​net ·

Dann musst du eben das TS noch etwas verfeinern:

[userFunc = user_powermail_step()] && [globalVar = TSFE:id=79]
page.998 < bla1
[end]
[userFunc = user_powermail_step()] && [globalVar = TSFE:id=80]
page.998 < bla2
[end]