2014-04-30 5 views
0

, campaign URLs 모양이 같은 것을 방지하기 위해 방문을 계산 한 후하십시오 드루팔 6 사이트 http://example.org/landing.html?pk_campaign=Email-Nov2011리디렉션 추한 URL을 Piwik에서

을, 나는하지만 같은에서 캠페인 기능을 사용하고 싶습니다 pk_campaign 매개 변수가있는 URL이 많이 확산되지 않도록하십시오.

필자의 첫 번째 생각은 .htaccess를 통해 헤더가 리디렉션되었지만 Piwik 추적 코드가 호출되기 전에는 의미가 없습니다. 이를 달성 할 수있는 방법이 있는지 궁금하고있는 pk_campaign 매개 변수

없이 URL에 코드를

  • 리디렉션을 추적

    1. 전화 Piwik : 그래서 뭔가를 할 필요가있다. 이견있는 사람?

  • 답변

    0

    추적 코드가 표시된 직후에 자바 스크립트 리디렉션을 사용하고 있지만 매개 변수 pk_campaign이있는 경우를 대비해 하나의 해결책이 있습니다. 그래서 그 이후 페이지 오른쪽의 <head> 섹션으로 추적 코드를 넣어 :

    작동하는 것 같다하지만 htaccess로의 오 데르의 PHP를 통해 리디렉션보다 느린
    <script type="text/javascript"> 
        if (location.search.indexOf('pk_campaign=')>=0) 
        { 
        document.location.href=location.protocol + '//' + location.host + location.pathname; 
        } 
    </script> 
    

    . 또한 추적 코드를 <head>에 넣고 페이지의 주요 내용 앞에로드하도록 강요합니다.

    다른 옵션은 PHP 및 htaccess에있을 수 있습니다. 그런 다음에 PHP Output Control functions를 사용하여 같은 count.php 뭔가에

    RewriteCond %{QUERY_STRING} pk_campaign 
        RewriteRule^/count.php?url=http://%{HTTP_HOST}%{REQUEST_URI} [R,L] 
    

    예를 들어 첫 번째 URL이 매개 변수 pk_campaign (htaccess로의)이 같은 뭔가가 들어 경우 카운트 스크립트 (count.php)로 리디렉션 헤더 오류를 피하십시오 :

    <?php 
        ob_start(); 
    ?> 
    
        <!-- Piwik tracking code here --> 
    
    <?php 
        if (isset($_GET['pk_campaign'])) { 
        ob_end_clean(); 
        header('Location: ' . preg_replace('/\?.*$/', '', $_SERVER["REQUEST_URI"])); 
        exit; 
        } 
    
        ob_end_flush(); 
    ?> 
    

    나는 실제로 그것을 시도하지 않았습니다. 어떻게 든 우리는 Piwik에게 추적 코드가 아닌 원래 페이지의 URL을 "알려"야합니다.