本日公開されたAdsenseの公式ブログであるInside Adsenseの記事によると広告コードを変更することが許可されたようです。
Adsenseの広告コード改変に関するポリシーが変更され広告コードの改変が可能となりました | ぼくらのアドセンスブログ
今までは改行とかすべて変更せずに貼り付けろといわれていたのが、不正なことしなければ多少は修正してもいいということになったみたいですね。これを使えば、はてなブログのスマートフォン版に PC 版とサイズの違う広告コードを埋め込むことが出来そうです。
はてなブログには記事下のカスタマイズと、スマートフォン版にも表示する機能があります。
これを使うことで、スマートフォン版にも AdSense 広告を表示することは出来ていたんですが、サイズが違うものは広告コードの改変が必要だったのでポリシーに引っかかる恐れがありました。
しかし、今回の広告コード改変ポリシーの変更で、以下のように UA を見て広告コードを出し分けすることが出来ますね。
<script type="text/javascript"> google_ad_client = "ca-publisher-id"; if (/iPhone|iPod|Android|DSi|3DS/.test(navigator.userAgent)) { // UA にキーワードが含まれる場合には小さい広告 google_ad_slot = "2345678901"; google_ad_width = 300; google_ad_height = 250; } else { // それ以外は大きい広告 google_ad_slot = "1234567890"; google_ad_width = 728; google_ad_height = 90; } </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
考え方としてはレスポンシブな時と同じで、ページの表示回数と広告の表示回数の整合性が取れているので問題ないと思います。
不足している部分としては、はてなブログでスマートフォン版から PC 版へ切り替えた時に PC 向けのサイズが表示されないことぐらいかなと思います。切り替えにはクッキーを使っているので、それをうまいこと処理すれば問題ないと思いますが、クッキーの扱いはめんどくさいので無視しました。*1
*1:device という名前でクッキーが出力されてるのを見れば良さそう