SORU
22 ŞUBAT 2011, Salı


Ekleme Google Javascript veya jQuery ile Adwords Dönüşüm İzleme

Javascript için oldukça yeniyim, ve orada muhtemelen yalan benim sorunum. Sitemizde bir widget içinde meydana gelen AdWords dönüşümleri takip etmeye çalışıyorum. Kullanıcı formu doldurur ve widget sonucu sayfa refresh olmadan aynı div içinde yayınlandı. Konu geçiriyorum olduğunda, deneyebilirim appendChild (veya ekleme jQuery) hem script öğelerinin Google'ın kod (aşağıda gösterilen) sayfasını alır 302 yönlendirilen boş bir Google sayfası (ya da en azından öyle görünüyor gibi FireBug). Form sonuçları için geri arama yöntemi sağlar edebiliyorum, ve o hazırlanalım izleme kodu eklemek için çalışıyorum. Başvuru için, bu kodu Google tarafından sağlanır:

<script type="text/javascript">
/* <![CDATA[ */
var google_conversion_id = 993834405;
var google_conversion_language = "en";
var google_conversion_format = "3";
var google_conversion_color = "ffffff";
var google_conversion_label = "bSpUCOP9iAIQpevy2QM";
/* ]]> */
</script>
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/993834405/?label=bSpUCOP9iAIQpevy2QM&guid=ON&script=0"/>
</div>
</noscript>

Gayet normal gözüküyor. Yani, yapmak istediğim sonuçları sayfa geri arama yöntemi kullanarak bu Ekle sağlanır. Açıkçası, ben yönlendirilen olursa olsun ben denemek ekle Bu kodu kullanarak js veya jQuery (ya da orijinal sayfa yükleme veya geri) belki de geri biraz alakasız ama neden değilim sadece yapıştırma içine sayfa kodu.

Farklı şekillerde bir dizi ama işte ben şu anda bu, (mazeret ıslaklık. yapmaya çalıştım Şu anda bu yolumu kesmek için çalışıyor!):

function matchResultsCallback(data){

    var scriptTag = document.createElement('script');
    scriptTag.type = "text/javascript";
    scriptTag.text = scriptTag.text   "/* <![CDATA[ */\n";
    scriptTag.text = scriptTag.text   "var google_conversion_id \= 993834405\;\n";  
    scriptTag.text = scriptTag.text   "var google_conversion_language \= \"en\"\;\n";   
    scriptTag.text = scriptTag.text   "var google_conversion_format \= \"3\"\;\n";
    scriptTag.text = scriptTag.text   "var google_conversion_color \= \"ffffff\"\;\n";
    scriptTag.text = scriptTag.text   "var google_conversion_label \= \"bSpUCOP9iAIQpevy2QM\"\;\n";
    scriptTag.text = scriptTag.text   "/* ]]> */\n";
    $('body').append(scriptTag);

    $('body').append("<script type\=\"text\/javascript\" src\=\"http://www.googleadservices.com/pagead/conversion.js\" />");
    //I have also tried this bit above using the same method as 'scriptTag' with no luck, this is just the most recent iteration.

    var scriptTag2 = document.createElement('noscript');
    var imgTag = document.createElement('img');
    imgTag.height = 1;
    imgTag.width = 1;
    imgTag.border = 0;
    imgTag.src = "http://www.googleadservices.com/pagead/conversion/993834405/?label=bSpUCOP9iAIQpevy2QM&guid=ON&script=0";

    $('body').append(scriptTag2);
    $('noscript').append(imgTag);
}

Gerçekten garip bir şey, ben sadece ınsert komut dosyası etiketleri (hangisi olduğu fark etmez), yönlendirme değil. Sadece ikisini de eklemeye çalıştığımda yönlendirir.

Ben de denedim koyarak ilk komut dosyası etiketi içine orijinal sayfa kod olarak değil yapma arayan her yerde, sadece ayar değişkenleri) ve takılması conversions.js dosya hala da öyle yönlendirme.

Eğer Firefox 3.6.13 ve jQuery 1.3 ve 1.5 (kullanıyorduk gördükten sonra v1.her ikisi de dahil kodu denedim kullanıyorum eğer ilgiliyse 3).

Bir şey eksik olduğumu biliyorum! Herhangi bir öneriniz var mı?

CEVAP
10 Mayıs 2011, Salı


Eğer sayfalarınızda jQuery kullanıyorsanız, neden gerekli değişkenleri ayarladıktan sonra, dönüşüm izleme komut dosyası anket için aynı getScript yöntemi kullanmıyorsunuz?

Bu genelde yaptığım bir şey, bir aldık bir kerebaşarı tepkibenim AJAX çağrıları.

var google_conversion_id = <Your ID Here>;
var google_conversion_language = "en";
var google_conversion_format = "3";
var google_conversion_color = "ffffff";
var google_conversion_label = "<Your Label here>";
var google_conversion_value = 0;
if (100) {
    google_conversion_value = <Your value here if any>;
}
$jQ.getScript( "http://www.googleadservices.com/pagead/conversion.js" );

Bu benim için gayet güzel çalışıyor. Eğer daha ayrıntılı bir örnek istiyorsanız:

$.ajax({
    async:      true,
    type:       "POST",
    dataType:   "json",
    url:        <Your URL>,
    data:       _data,
    success:    function( json ) {

            // Do something
            // ...

            // Track conversion
            var google_conversion_id = <Your ID Here>;
            var google_conversion_language = "en";
            var google_conversion_format = "3";
            var google_conversion_color = "ffffff";
            var google_conversion_label = "<Your Label here>";
            var google_conversion_value = 0;
            if (100) {
                google_conversion_value = <Your value here if any>;
            }
            $.getScript( "http://www.googleadservices.com/pagead/conversion.js" );

        } // success
});

Eğer Mootools veya Prototype gibi diğer kütüphaneleri kullanıyorsanız, yerleşik yöntemleri benzer olduğuna eminim. Bu AFAIK en temiz sandığınız kadar zor değil.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CommonArtisan

    CommonArtisa

    7 Temmuz 2012
  • Soulkiller13 ツ

    Soulkiller13

    30 Mayıs 2013
  • Tips On Linux

    Tips On Linu

    26 Temmuz 2008