Как заставить файл cookie __utmz быть установлен при загрузке первой страницы - PullRequest
2 голосов
/ 03 марта 2012

Я использую милую маленькую функцию для отслеживания посетителей моего сайта и передачи информации в Salesforce.Однако для многих отправленных форм (ни одного) не задано много значений, поскольку (насколько я понимаю) файл cookie не устанавливается до загрузки второй страницы.

Я проверил это, и это кажется точным, проблема в том, что многие люди заполняют форму на первой странице, и я не получаю никакой информации через эти представления.

Я загружаю GA следующим образом:

  <script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-29066630-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script');
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 
        'http://www') + '.google-analytics.com/ga.js';
    ga.setAttribute('async', 'true');
    document.documentElement.firstChild.appendChild(ga);
  })();


</script>

И затем запускаю функцию php для разбора файла cookie __utmz:

function tracking_cookie() { // ver 1.5
    $trackarr   = split('[|]',$_COOKIE["__utmz"]);
    $conversion = $_COOKIE["Conversion"];

    for($i=0;$i<count($trackarr);$i++){
        $keyvalues=split('[=]',$trackarr[$i]);
        $key=substr($keyvalues[0],-6);      
        switch ($key){
            case "utmcsr":
                $cookie['SearchEngine']     =   $keyvalues[1];break;
            case "utmccn":
                $cookie['SearchCampaign']   =   $keyvalues[1];break;
            case "utmcmd":
                $cookie['SearchType']       =   $keyvalues[1];break;
            case "utmcct":
                $cookie['AdText']           =   $keyvalues[1];break;
            case "utmctr":
                $cookie['Keyword']          =   $keyvalues[1];break;
            case "mgclid":
                $cookie['isPPC']            =   $keyvalues[1];break;
        }
    }

У меня работает больше кода послеэтот.Любые идеи о том, как заставить куки загружаться в первый раз?

Ответы [ 2 ]

0 голосов
/ 12 марта 2012

Файл cookie не читается до загрузки второй страницы - потому что они отправляются в запросе.

Что вы можете сделать, это при начальной загрузке страницы (и в файле PHP не найден файл _utmz) добавитьдругой файл JS / вызовите JS, который будет запускать команду ajax на ваш сервер после загрузки страницы.

Это будет действовать как загрузка второй страницы и должно иметь доступ к новому cookie (и пользователь не сможетне покинул страницу)

0 голосов
/ 09 марта 2012

Вы ознакомились с этим инструментарием Force.com для Google Analytics?Может быть более надежным, чтобы получить информацию прямо из Google.Не зная, что еще вы отслеживаете или как вы храните его в Salesforce, трудно дать более подробную информацию.

https://github.com/mavens/Force.com-Toolkit-for-Google-Analytics

В группах Google также есть некоторые обсуждения - http://groups.google.com/a/googleproductforums.com/forum/#!category-topic/analytics/discuss-tracking-and-implementation-issues/bVR84di07pQ

Вы сказали: «Многие формы не имеют ни одного представления», значит ли это, что вы время от времени получаете данные?Можете ли вы сузить его до браузера?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...