2016-10-05 8 views
0

だから私は以下のようなことをしています。 GTMにデータを動的に渡すことができるようにしたいと思っています。私は間違っていることを知っていますが、私はこれについてどうやって行く必要があるかを理解するための助けが必要です。再び。私がしたいのは、PHP変数のデータをGoogleタグマネージャに送信するだけで、GAで見ることができます。スクリプトでPHPを使用してデータを送信するGoogleタグマネージャ

ありがとうございました!

<script> 
 
dataLayer.push({ 
 
    'transactionId': '<?php echo $order['id']; ?>', 
 
    'transactionTotal': '<?php echo number_format($order['subtotal'],2) ?>', 
 
    'transactionProducts': [{ 
 
     'sku': '', 
 
     'name': '<?php echo $order['programName']; ?>', 
 
     'price': , 
 
     'quantity': 
 
    }], 
 
    'event' : 'OrderComplete' 
 
}); 
 
</script>

+0

こんにちは、あなたはそれが間違っていることをどのように知っていますか?構文エラーが出ていますか? – nyuen

+0

はい、構文エラーが発生し、データがGoogleアナリティクスに渡されません – davidthom42

+0

構文エラーとは何ですか?私のPHPは錆びていますが、二重引用符を使用しようとしました。たとえば、 ''<?php echo $ order [" id "]; ?> ''。また、「sku」、「price」、および「quantity」は必要な情報です(https://support.google.com/tagmanager/answer/6107169?hl=ja)。 – nyuen

答えて

0

あなたがちょうどあなたのJSONオブジェクトに"を逃しているようです。

dataLayer.push({ 
    'transactionId': '<?php echo $order['id']; ?>', 
    'transactionTotal': '<?php echo number_format($order['subtotal'],2) ?>', 
    'transactionProducts': [{ 
     'sku': '', 
     'name': '<?php echo $order['programName']; ?>', 
     'price': 'here', 
     'quantity': 'here' 
     }], 
    'event' : 'OrderComplete' 
}); 

残りは問題ありません。

これらのフィールドの値がない場合は、空の文字列'' 'を書き込むことで空にします。

<?php 
    function myProducts() { 
     $result = array(); 
     foreach($products as $product) { 
      array_push($result, "{ 
       'sku': '" . $product['sku'] . "', 
       'name': '" . $product['name'] . "', 
       'price': '" . $product['price'] . "', 
       'quantity': '" . $product['quantity'] . "' 
      }"); 
     }; 

     return implode(",", $result); 
    } 
?> 

dataLayer.push({ 
    'transactionId': '<?php echo $order['id']; ?>', 
    'transactionTotal': '<?php echo number_format($order['subtotal'],2) ?>', 
    'transactionProducts': [<?php echo myProducts()?>], 
    'event' : 'OrderComplete' 
}); 
関連する問題