ASP.NETモバイルで<head>タグが消える
2008-05-01


今日は1日中この問題を調べてました。きっかけは以下のサイト

モバイルWebフォームでheadタグが消える

で、調べてみたらできるようです。aspxの<mobile:form>タグの中に以下のような記述を書けばいい。

<mobile:DeviceSpecific ID="DeviceSpecific1" Runat="server">
   <Choice Filter="supportsJavaScript">
     <ScriptTemplate>                     
       <meta name="description" content="description metatag"/>        
     </ScriptTemplate>
  </Choice>
</mobile:DeviceSpecific>  

この記述でmetaタグが埋め込まれるのはアクセスしたデバイスがjavascriptをサポートしている場合のみです。javascript未サポートの携帯の場合は何も表示されません。

ブラウザファイルを書き換えて強制的にjavascriptオンにするとほかの部分で不具合でそうで困った。

metaタグを出力するのはSEO対策でサーチエンジン用の情報を記述したいからだそうです。そういう場合はサーチエンジンのクローラーがアクセスしたときにmetaタグが出ればいいのかな?サーチエンジンのUserAgentってわかるようになってるのか?この辺がわかれば解決かな。

元ネタ

[URL]

5/17 追記

かるあさんが解決方法をブログに書いてくれました。 どうもありがとうございます。

[URL]

[C#]
[VisualStudio]

コメント(全0件)
コメントをする


記事を書く
powered by ASAHIネット