var _gaq = _gaq || []; _gaq.push([\'_setAccount\', \'UA-13211647-1\']); _gaq.push([\'_trackPageview\']); (function() { var ga = document.createElement(\'script\'); ga.type = \'text/javascript\'; ga.async = true; ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\'; var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s); })();

Trac Google Analytics プラグイン (修正版)

Trac & Google Analytics

目次

概要

Trac Google Analytics プラグイン (修正版) は Trac Google Analytics Plugin (TracGoogleAnalytics) で発生するエラーを回避した修正バージョン。

※ TracGoogleAnalytics 0.2.4 で同様の修正が行われました。

Trac Google Analytics プラグインの特徴

  • Trac の各ページに Google Analytics のトラッキングコードを自動的に挿入する
  • 管理者ユーザー (admin) や認証ユーザー (authenticated) のトラッキングを無効にできる
  • 外部リンクのトラッキングに対応 (外部リンクのクリック数のカウント)
  • ダウンロードリンクのトラッキングに対応 (ファイルダウンロード数のカウント)
  • ダウンロードリンクとみなすファイル拡張子のリストを指定できる

オリジナルからの変更点

  • 管理コンソール – [Google] – [Analytics] を表示した際に、UndefinedError が発生してページが表示されない問題を修正

※ Trac Google Analytics プラグイン (修正版) のベース (オリジナルのバージョン) は TracGoogleAnalytics 0.2.2。

※ TracGoogleAnalytics 0.2.4 で同様の修正が行われました。

使い方

  1. 管理コンソール – [Google] – [Analytics] を表示する
  2. [UID] 欄にウェブプロパティ ID (UA 番号) を入力する (UA-XXXXX-Y 形式)
  3. 必要に応じてその他のオプションを設定する
  4. [Apply changes] ボタンをクリック

ダウンロード

インストール

管理コンソールまたは Easy Install を使用してインストールする。

管理コンソール

  1. 管理コンソール – [プラグイン] を表示する
  2. [プラグインをインストール] の [ファイルを選択] で TracGoogleAnalytics-0.2.4-py2.7.egg を選択して [インストール] ボタンをクリック
  3. 新しく追加された [TracGoogleAnalytics 0.2.4] セクションを展開する
  4. すべてのコンポーネントをチェックして [変更を適用] ボタンをクリック

※ 手動でインストールする場合は、TracGoogleAnalytics-0.2.4-py2.7.egg を /path/to/env/plugins ディレクトリにアップロードする。

Easy Install

%easy_install TracGoogleAnalytics

trac.ini の [components] セクションに以下の記述を追加してプラグインを有効にする。

[components]
tracext.google.analytics.* = enabled

修正箇所 (diff)

※ TracGoogleAnalytics 0.2.4 で同様の修正が行われました。(変更内容)

管理コンソール – [Google] – [Analytics] を表示すると次のようなエラーメッセージが表示される。

UndefinedError: None has no member named "upper"

エラーを回避するためオリジナルの templatesgoogle_analytics_admin.html を次のように修正。

--- google_analytics_admin.html (original)
+++ google_analytics_admin.html (modified)
@@ -22,3 +22,3 @@
 <label for="uid">UID:</label>
-<input type="text" name="uid" value="${ga.uid.value.upper()}"/>
+<input type="text" name="uid" value="${ga.uid.value}"/>
 <p class="help">Enter your Google Analytics' UID in this box.<br/>

※ エラーの原因は None 定数からの str.upper() 呼び出し。UID を設定するまで ga.uid.value 属性値は未定義 (None) が返る。

templates/site.html によるトラッキングコードの挿入

/path/to/env/templates/site.html を作成すると、プラグインを使わずに Google Analytics を導入できる。たとえばトラッキングコードを単に挿入する場合 site.html の内容は次のようになる。(UA-XXXXX-Y の部分は書き換える)

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:py="http://genshi.edgewall.org/" py:strip="">

  <body py:match="body" py:attrs="select('@*')">
    ${select('*|text()')}

    <script type="text/javascript">
      var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
      document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    </script>
    <script type="text/javascript">
      try {
        var pageTracker = _gat._getTracker("UA-XXXXX-Y");
        pageTracker._trackPageview();
      } catch(err) {}
    </script>
  </body>
</html>

サポートする?

いただいたコメントは大変参考になります。ここまで読んでいただきありがとうございました。

Post Tagged with , ,

コメントを残す

メールアドレスが公開されることはありません。