2017-02-13 3 views
0

Ich versuche gerade das Facebook Pixel zu installieren und Ereignisse über eine if-Anfrage auszulösen. Ich füge meine head.php in jede Seite ein und was ich im Grunde tun möchte, ist: richte eine Variable auf der Seite ein, die ich verfolgen will, und frage via if-request nach dieser Variable im facebook pixel code damit das entsprechende Ereignis kann ausgelöst werden. Problem ist, meine Ereignisse werden nicht angezeigt, wenn ich sie auf meiner Facebook-Anzeigenseite nachschaue. Ich kann weder die Ereignisse unter "Spalten definieren" auswählen, noch kann ich sie sehen, wenn ich auf "Anzeigenmanager" -> Pixel klicke.Facebook Pixel triggering events via auf Anfrage

Wäre sehr froh, wenn jemand ähnliche Probleme hätte und es gelöst oder einfach weiß was zu tun ist. Danke im Voraus!

Hier ist, wie mein $ Pixelvariable gegeben wird, bevor head.php (in PHP) enthalten ist:

if (($_POST['vorname']!="" AND 
$_POST['nachname']!="" AND 
$_POST['email']!="" AND 
$_POST['telefon']!="" AND 
$_POST['agb']!="")) 
{ 
$pixel = "teachersent"; 
} 
else{ 
$pixel = "teacherrequest"; 
} 
include ("../head.php"); 

Das Gleiche gilt für die anderen Variablen auf der anderen Seite.

Hier ist mein Facebook-Pixel-Code mit dem if-Anfragen:

<!-- Facebook Pixel Code --> 
<script> 
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 
n.push=n;n.loaded=!0;n.version='2.0';n.queue= [];t=b.createElement(e);t.async=!0; 
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 
document,'script','https://connect.facebook.net/en_US/fbevents.js'); 
fbq('init', '1425975630785657'); // Insert your pixel ID here. 
fbq('track', 'PageView'); 

var pixeldata = <?php echo json_encode($pixel, JSON_HEX_TAG); ?>; 

if (pixeldata == "teacherrequest") { 
fbq('track', 'teacherrequest', { 
value: 20, 
}); 
} 
else if (pixeldata == "teachersent") { 
fbq('track', 'teachersent', { 
value: 1, 
}); 
} 
else if (pixeldata == "teamrequest") { 
fbq('track', 'teamrequest', { 
value: 40, 
}); 
} 
else if (pixeldata == "teamsent") { 
fbq('track', 'teamsent', { 
value: 2, 
}); 
} 

</script> 
<noscript><img height="1" width="1" style="display:none" 
src="https://www.facebook.com/tr?id=1425975630785657&ev=PageView&noscript=1" 
/></noscript> 
<!-- DO NOT MODIFY --> 
<!-- End Facebook Pixel Code --> 

EDIT: Dank @Cbroe: Installierte Pixel Helfer und entdeckte, dass das Pixel gefunden wird, aber keines der Ereignisse ausgelöst werden. In der Konsole konnte ich sehen, dass die Variable pixeldata null ist, was bedeutet, dass die PHP-Variable $ pixel nicht korrekt übergeben wird. Irgendwie geht es auf dem Weg vom Teil der Seite verloren, bevor man head.php in head.php aufnimmt, wo es verwendet werden soll.

+0

Vergewissern Sie sich, dass der HTML/JS-Code, den Ihre PHP-Skripte ausgeben, der von Ihnen erwartete ist. Überprüfen Sie die Konsole auf JS-Fehler. Wenn das noch nicht hilft, installieren Sie die Facebook Pixel Helper Chrome Erweiterung (nicht sicher, ob das auch für andere Browser verfügbar ist), und sehen Sie, was das zu sagen hat. – CBroe

+0

Hallo Cbroe, danke für die Tipps, hat mir sehr geholfen. Pixelhelfer installiert und festgestellt, dass das Pixel gefunden wurde, aber keines der Ereignisse ausgelöst wurde. In der Konsole konnte ich sehen, dass die Variable pixeldata null ist, was bedeutet, dass die PHP-Variable "pixel" nicht korrekt übergeben und in die Java-Script-Variable konvertiert wird. – Franky2207

Antwort

0

Ich schrieb die <script> var pixeldata = <?php echo json_encode($pixel, JSON_HEX_TAG); ?>; </script> außerhalb der Facebook-Pixel-Code und irgendwie funktioniert es jetzt.

Verwandte Themen