Facebook Pixel инициирует события через запрос if

В настоящее время я пытаюсь установить пиксель facebook и позволить ему запускать события через запрос if. Я включаю свой head.php на каждую страницу, и в основном я хочу сделать следующее: настроить переменную на странице, которую я хочу отслеживать, и запросить через if-request эту переменную в коде пикселя facebook, чтобы соответствующее событие может быть вызвано. Проблема в том, что мои события не отображаются, когда я просматриваю их на своей странице объявлений в Facebook. Я также не могу выбрать события в разделе «Определить столбцы» и не вижу их, когда нажимаю «Менеджер рекламы» -> «Пиксель».

Был бы очень рад, если бы у кого-то были подобные проблемы и они их решили или просто знают, что делать. Заранее спасибо!

Вот как задается моя переменная $pixel перед включением head.php (в PHP):

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

То же самое для других переменных на другой странице.

Вот мой код пикселя facebook с запросами if:

 <!-- 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: благодаря @Cbroe: установил помощник по пикселям и заметил, что пиксель найден, но ни одно из событий не запускается. В консоли я мог видеть, что переменная pixeldata имеет значение null, что означает, что переменная php $pixel передается неправильно. Так что он как-то теряется на пути от части страницы перед включением head.php к head.php, где его нужно использовать.


person Franky2207    schedule 13.02.2017    source источник
comment
Убедитесь, что код HTML/JS, который выводит ваш PHP-скрипт, соответствует вашим ожиданиям, проверьте консоль на наличие ошибок JS. Если это уже не помогает, установите расширение Facebook Pixel Helper Chrome (не уверен, что оно доступно и для других браузеров) и посмотрите, что оно скажет.   -  person CBroe    schedule 13.02.2017
comment
Привет Cbroe, спасибо за советы, мне очень помогли. Установил помощник по пикселям и заметил, что пиксель найден, но ни одно из событий не запускается. В консоли я мог видеть, что переменная pixeldata имеет значение null, что означает, что пиксель переменной php неправильно передается и преобразуется в переменную java-скрипта.   -  person Franky2207    schedule 13.02.2017


Ответы (1)


Я написал <script> var pixeldata = <?php echo json_encode($pixel, JSON_HEX_TAG); ?>; </script> вне кода пикселя facebook, и теперь он каким-то образом работает.

person Franky2207    schedule 13.02.2017