2013-03-21 19 views
5

Próba wdrożenia śledzenia konwersji Facebook na karcie Facebook. Możesz wyświetlić tę stronę tutaj http://www.facebook.com/StChristophersFellowship/app_366591783429546 problem polega na tym, że oddzielna strona nie jest uruchamiana po przesłaniu formularza. Czy mogę utworzyć sekcję javascript uruchamianą, ale TYLKO onclick przycisku przesyłania, myślę, że to również ma być wstrzyknięty do szefa dokumentu HTML. Znalazłem tę odpowiedź na uruchamianie JavaScript z linku lub kliknięcia - Czy ta metoda zadziała, jeśli zadzwonię do kodu śledzenia/konwersji z oddzielnego dokumentu JS?Jak zaimplementować śledzenie konwersji Facebook onclick lub gdy nie ma osobnej strony z podziękowaniami

Każda pomoc będzie bardzo doceniona - dzięki!

"Muszę zgodzić się z powyższymi komentarzami, że nie można wywołać pliku, ale można załadować plik JS w ten sposób, nie jestem pewien, czy odpowiada na twoje pytanie, ale może pomóc ... oh i użyłem linka zamiast przycisku w moim przykładzie ...

<a href='linkhref.html' id='mylink'>click me</a> 

<script type="text/javascript"> 

var myLink = document.getElementById('mylink'); 

myLink.onclick = function(){ 

var script = document.createElement("script"); 
script.type = "text/javascript"; 
script.src = "Public/Scripts/filename.js."; 
document.getElementsByTagName("head")[0].appendChild(script); 
return false; 

} 


</script>" 
+0

Nie chcesz po prostu używać Google Analytics do śledzenia i tworzenia niestandardowych wydarzeń? – ahren

+0

Nie, ponieważ jest zintegrowany z naszym narzędziem reklamowym, dzięki czemu możemy śledzić konwersję z reklam na Facebooku, które prowadzimy. Zdradliwy! Musi być oparty na Facebooku. –

+0

OK. Możesz dołączyć cały plik, ale dlaczego nie po prostu wywołać funkcję? Co zawiera plik 'filename.js'? P.S. Nie widzę Twojej aplikacji, jest prawdopodobnie w trybie piaskownicy, ukryta lub ograniczona przez kraj. – ahren

Odpowiedz

17

Próbowałem użyć rozwiązania Nicolás, ale konwersja nigdy nie została zweryfikowana.

Jednak znalazłem an article opisującą technikę, która działała natychmiast, używając adresu URL z <noscript><img src="..." /></noscript>.

umieścić element na swojej stronie jak:

<div id="fb_pixel"></div> 

Następnie zadeklarować te reguły CSS dla konwersji, zmieniając background-image dla znalezionego w swoim własnym kodzie śledzenia <noscript> URL.

#fb_pixel { display:none; } 
.fb_conversion 
{ 
    background-image: url('https://www.facebook.com/offsite_event.php?id=33333333333&value=0&currency=USD'); 
} 

Gdy chcesz śledzenie występuje (na przykład po złożeniu formularza AJAX), należy dodać klasę fb_conversion do <div> użyciu JavaScript. Na przykład z jQuery:

$("#fb_pixel").addClass("fb_conversion"); 

Spowoduje to załadowanie obrazu przeglądarki, a tym samym śledzenie konwersji.

2

miałem podobny problem, rozwiązałem go oddanie wywołanie AJAX na zwrotnego sklejaniu w następujący sposób:.

$(function() { 
    $('#btnSend').click(facebookTrackingSendClick); 
}); 

function facebookTrackingSendClick(e) { 
    e.preventDefault(); 
    var clickedElement = this; 
    var fb_param = {}; 
    fb_param.pixel_id = '123'; 
    fb_param.value = '0.00'; 
    fb_param.currency = 'BRL'; 
    (function() { 
     var fpw = document.createElement('script'); 
     fpw.async = true; 
     fpw.src = '//connect.facebook.net/en_US/fp.js'; 
     fpw.onload = function() { 
      // Callback here. 
     }; 
     var ref = document.getElementsByTagName('script')[0]; 
     ref.parentNode.insertBefore(fpw, ref); 
    })(); 
}