2009-09-01 7 views
1

すべてのページの下部にトラッキングコードスニペットを追加する必要があることはわかっていますが、これを行う中心的な場所はありますか?Sitecore 6でGoogle Analyticsを使用するにはどうすればよいですか?

また、すべてのテンプレートにこのトラッキングコードを追加する必要がありますか?

スニペットをユーザーコントロール、または外部の.jsファイルにラップして各ページで参照することはできますが、グローバルフッタはどこかにありますか?私が取り組んでいるサイトには約30-40のレイアウトがあり、それをそれぞれに追加するのは苦痛になります!

ありがとうございます!

答えて

5

実際、Sitecoreレイアウトの役割はまさにこれです。すべての個々のページテンプレートが「派生」するグローバルファイルとして機能します。

通常、分析コードをマスターレイアウトに貼り付け、Sitecoreのサブレイアウト/プレースホルダ技術を使用して、必要なさまざまなページテンプレートを作成します。コンテンツを提供しているデバイスには、通常は1つまたは2つ以上のレイアウトが必要です。そして、私はほとんどのサイトを推測しています。唯一のデバイスは通常のWebコンテンツ配信です。

あなたができることは、すべてのレイアウトが共通の基本クラス(ページを継承しています)からコードベースを継承し、ここから集中的にGoogleコードを挿入することです。あなたはまだすべてのレイアウトファイルを通過する必要があります。

+2

マークとは何ですか?また、SitecoreクライアントのトラッキングコードとGAレポートへのアクセスを指定できるSitecore Google Analyticsモジュール(http://trac.sitecore.net/SitecoreGoogleAnalytics)もご利用いただけます。 – Tchami

1

私はモジュールを試していない、私はコードビハインドのバージョンだと思う。私はこれをXSLTで作った。かなり速く簡単に作ることができる。私はfooter.xsltを持っています。ここでは、あなたが立っているページが私が索引を付けるテンプレートを使用しているかどうかを単にチェックするコードを入れて、除外したいページ名に属していません。次に、メモ欄に以下のようなGoogle Analytics用のカスタムテンプレートを持つアイテムがあります。私は分析のために含めたいテンプレートのリストが含まれてい-field IncludeTemplates: ExcludeItemsNamesはアイテム名によってページ

contains($includeTemplates, concat('|',./@template,'|')) and not(contains($excludeItemNames, concat('|',./@template,'|'))) 

は@keyと@templateを覚えておいてください除くため-field小さな文字で常に

です多くのドメインを実行する場合は、pageTracker._setDomainName( "www.example.com")を追加することを忘れないでください。あなたが同じfooter.xsltを使用する場合、サブドメインなどを分離することができます。

1

通常、私たちは実際のGoogleコードをコンテンツと見なします。 Sitecoreには通常、/ sitecore/content/settingsのような設定フォルダがあります。これはサイトのルートの外側に存在します。これの下には、単純な複数行のテキストフィールドを持つ設定項目があります。フィールドの種類はメモなどです。

この設定項目の内容をレンダリングするXSLTを作成します。以下のようなもの(フィールドを想定し、設定項目の値と呼ばれている):

<xsl:value-of select="sc:fld('Value','/sitecore/content/settings/footerJavaScript')" /> 

あなたがまたは無効にする出力エスケープ属性を設定する必要がない場合があります。

はその後、テンプレートは、XSLTのレンダリングを見てコントロールを追加すると、あなたのページを使用してaspxページに:

<sc:XslFile runat="server" Path="/xsl/footerJavaScript" /> 

我々は通常、コンテンツとしてのjavascriptを保つ理由は、これは変更にクライアントを許可されます分析コードは私達に連絡する必要はありません。

関連する問題