2017-04-13 12 views
1

Piwik 3.0.2アナリティクスをSharePoint 2016の社内ファームに統合するにはどうすればよい方法ですか? Piwik自体は、次のスニペットをWebページの頭の部分に埋め込むことを提案しています。 〜5000のサイトコレクションのすべてをクリーンでサポートするにはどうすればいいですか?それは私だったらあなたの助けをありがとう:)Piwik AnalyticsをSharePoint 2016に統合する

<!-- Piwik --> 
 
<script type="text/javascript"> 
 
    var _paq = _paq || []; 
 
    /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ 
 
    _paq.push(['trackPageView']); 
 
    _paq.push(['enableLinkTracking']); 
 
    (function() { 
 
    var u="//my-piwik-url/"; 
 
    _paq.push(['setTrackerUrl', u+'piwik.php']); 
 
    _paq.push(['setSiteId', '3']); 
 
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 
 
    g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s); 
 
    })(); 
 
</script> 
 
<!-- End Piwik Code -->

答えて

0

私はscriptlinkカスタムアクションを作成し、ファイルIホスト(SharePointでまたはそれ以外)を指すように設定します。テナントをループしてカスタムアクションを各サイトコレクションにインストールするには、いくつかのパワーシェルを用意する必要があります。チェックアウトthis write up on how to accomplish this with powershell

+1

を見ている可能性があり。 – Nils

0

シンプルなpiwik統合を実証するソリューションを、https://github.com/nils-a/piwik4spに作成しました。

MDS (minimal download strategy)がアクティブであっても動作します。しかし、それはサンドボックスソリューションで、あなたが〜5000のサイトコレクションを持っていると言ったように、ファイルのインスタンスを1つしか持たないように修正する必要があります。ファームソリューションがオプションでない場合はファームソリューションまたは専用サイトを使用してください。

あなたのjs-を展開するscriptLinkを使用します(でもMDSに)うまく統合するために、しかし

<CustomAction Id="Piwik4SP.Script.Link" 
    Location="ScriptLink" 
    Sequence="202" 
    ScriptBlock="var _paq = _paq || []; 
     /* tracker methods like 'setCustomDimension' should be called before 'trackPageView' */ 
     _paq.push(['trackPageView']); 
     _paq.push(['enableLinkTracking']); 
     (function() { 
     var u='//my-piwik-url/'; 
     _paq.push(['setTrackerUrl', u+'piwik.php']); 
     _paq.push(['setSiteId', '3']); 
     var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 
     g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s); 
     })();" /> 

:あなたは決して(決して、これまで)はMDSは、以下のようなアクションがトリックを行う必要があります有効にしている

ファイルlike this

<CustomAction Id="Piwik.Script.Link" 
    Location="ScriptLink" 
    Sequence="202" 
    ScriptSrc="~sitecollection/SiteAssets/Piwik4SP/piwik.js" /> 
「あなたの」piwik.jsで

を使用すると、MDSのためのモジュールを登録していることを確認:someFuncToCallOnNavigate

window.RegisterModuleInit('/path/to/your/piwik.js', someFuncToCallOnNavigate); 

あなたがpiwik.jsがすでにロードされている場合は、チェックして、必要に応じてロードする必要があります。その後、piwik apiで文書化されているように追跡を開始することができます。ただし、MDSが有効な場合は、ほとんどのページリクエストはstart.aspxになります。したがって、追跡する前にurlを変更したいと思うかもしれません。この問題を解決する方法については、this fileを参照してください。

0

は、アドイン、ファーム内のfrastructureを持っている場合は、単に、上記のようにスクリプトブロックを追加することはおそらくない(常に)の仕事は、MDSが有効になっているかどうことを覚えておいてくださいWeb Analytics Integration add-in

関連する問題