トップ回答者
MVCにGoogleAnalyticsを入れたい

質問
-
回答
-
GoogleAnalytics から取得したタグをビューに埋め込めばいいだけだと思いますが、<html>タグの外に配置してはいけません。これは ASP.NET の話以前の HTML の仕様です。できるかぎり<body>タグの中に書いてください。
あと気になったのですが、ビューのファイルが「vbhtml」と書いているにもかかわらず、書いているコードが「aspx」のコードで書いてあるように見えます。ASP.NET MVC 3 からはビューの書き方が Razor 構文と今までの ASPX 構文(でいいのかな?)2パターン存在するので、まずはそこをきちっと押さえておいてください。
おのでら (http://sorceryforce.com/)
すべての返信
-
GoogleAnalytics から取得したタグをビューに埋め込めばいいだけだと思いますが、<html>タグの外に配置してはいけません。これは ASP.NET の話以前の HTML の仕様です。できるかぎり<body>タグの中に書いてください。
あと気になったのですが、ビューのファイルが「vbhtml」と書いているにもかかわらず、書いているコードが「aspx」のコードで書いてあるように見えます。ASP.NET MVC 3 からはビューの書き方が Razor 構文と今までの ASPX 構文(でいいのかな?)2パターン存在するので、まずはそこをきちっと押さえておいてください。
おのでら (http://sorceryforce.com/) -
最初に提示されたコードはGoogle Analyticsのサイトから取得したものなのでしょうか?
特に ASPX として出力されたコードでなくても、通常の HTML 向けに出力されたコードを vbhtml に埋め込めば普通は動作するはずです。(携帯向けはよくわかりませんが)もう一度 ASPX 向けではないタグ(HTML のみ)を取得してみてそれを vbhtml に埋め込んでみてください。
(なんか携帯向けトラッキングコードと呼ばれるものがどのような方法で取得したかがわかっていないので答えになっていないかもしれませんが)
おのでら (http://sorceryforce.com/) -
携帯向けの場合、ブラウザー上でのJavaScript動作を期待できないため、サーバーサイドで処理するようです。そのためGoogleから提示されるコードも質問者さんが貼り付けられているように<script runat=server>になっています。
ですので、このまま使うにはaspxの必要がありvbhtmlでは動作しない、ということになります。
追記:
という意味ではおのでらさんの「これは ASP.NET の話以前の HTML の仕様です」という指摘も間違っていて、HTMLが出力される前のaspxの段階では<html>の前に必要なコードを書くことは何ら問題ありません。Googleから提示されたコードが省略されていてわかりませんが、もしなんらかタグを生成するコードなら、おのでらさんの指摘通りの問題があるわけですが。
- 編集済み 佐祐理 2011年12月15日 4:12