Movable Type で、検索向け AdSense(Google AdSense for Search)を使う方法

Google AdSense は、コンテンツ向け AdSense検索向け AdSense(Google AdSense for Search)の 2種類のサービスがある。通常我々が目にしたりサイト管理者が利用するのはコンテンツ向け AdSense の方。検索向け AdSense の方はネット上でほとんどみかけない。それでもまぁたまには見かける、といった感じなのだが、そういったサイトで検索を実行するとそのサイトのデザインとはかけ離れて、Google の画面に飛んでしまうことが多い。検索結果は iframe で表示されるので、うまくやれば自分のサイトに溶け込ませることはできる。このサイト Perl Tips が実際に実践しているので、まずはどんな風になるのか左上の検索窓から何か検索結果がたくさん出そうなキーワードを入力してみて欲しい。powered by Google と表示されるものの、検索結果はこのサイト内に表示され、デザインは完全に溶け込んでいると思う。 検索向け AdSense を使うモチベーションは以下の通り。
  1. Movable Type の検索よりも Google の検索の方が断然高速である(これは疑いない)。私はこのサイトを自身の備忘録としても使っているので、実は自分のサイトを検索することがよくある(笑)。Movable Type の検索は遅くてもうやってられないというレベルであった。
  2. 検索向け AdSense を使うと、ひょっとしたら少しだけ儲けの足しになるかも。←実際はこの考えはヨコシマ過ぎた。このサイトを訪れる人はすでに Google で検索して来ているわけだから、さらにこのサイト内を検索しようとする人なんて、いない(笑)。
  3. 検索向け AdSense はどのように機能するのか、技術者たるもの、知っておく必要があると思った。
  4. このブログのネタになると思った。そして、実際に書いている(笑)。
さて、その方法だが、
  1. AdSense のサイトにアクセスして、AdSense 設定タブ→検索向け AdSense を選ぶ。
  2. Google ウェブ検索 + サイト検索には、yourdomain.com を入力する。ここで注意しなければならないのは、検索向け AdSense は、あくまでもドメイン単位で行われるということ。どこかの無料ブログサービスを利用していて、そのサービスがディレクトリ名でユーザーを区別している場合は、そのブログ全体が検索対象となってしまう場合がある。Google ではサブドメインは1つの独立したドメインとみなしているため、ユーザー名がサブドメインとなっているブログサービスなどは、自身のサブドメインを入力すればよい。
  3. 検索ボックス オプションの選択で、自分のサイトに結果を表示するを選択。このとき、Movable Type で php を拡張子にしている人は、https://yourdomain.com/search.php などと名前を付けておこう。html の人は search.html。search.php または search.html については後述する。
  4. 検索結果領域の幅を入力は大事で、500px 以上しか受け付けないし、実際に検索結果の iframe 領域が 500px 以上ないと端の方が切れてしまう。だから自分のサイトに検索向け AdSense を入れようと思ったら、デザインの見直しを迫られるかもしれない。検索結果表示領域にしたい部分がもともと 500px 以上あったサイトは問題ないが、妥協できない場合はあきらめる。
  5. お客様のサイトのエンコード は、Movable Type の場合は自分のサイトの文字コードを変更した覚えがない限り、Unicode (UTF-8) を選べばいいと思う。
  6. 続行ボタン > > を押して次のページに進む。
  7. Google ドメイン用の国または地域では、普通は日本を選ぶと思う。
  8. パレットで色を選んだり、チャネルを設定するが、検索向けチャネルは設定しておいた方がよいと思う。新しいチャネルの追加を選ぶと、前のページで設定した内容がパーになってしまうので、後でやりおなしてもよいです。
  9. 続行ボタン > > を押して次のページに進む。
  10. 次のページでは、検索ボックスのコード検索結果のコードの2種類の HTML が表示される。上の方は、Movable Type でいえば、既存の検索ボックスのところと置き換えるべきコード。下の方は検索結果用のコードなので・・・
  11. ・・・新しく Movable Type で検索結果用のテンプレートを作る必要がある。そのためにはまず、Movable Type の方で、トップページのテンプレートをごっそりコピーしておく。
  12. search.php または search.html という名前でテンプレートを作成する。
  13. 新しく作成したテンプレートは白紙だから、コピーしたトップページのコードを貼り付ける。
  14. トップページで、ブログのエントリーを表示している部分をすべて削除して、その場所に検索向け AdSense で最後に表示した下のテキストボックスにある、検索結果のコードをコピーして貼り付ける。そして保存する。
  15. 以上で完了、あとはテスト。
  16. このサイトでは検索ボックス向けコードは以下のようにしている。太字の部分は、自分のサイト用に設定しなおすところである。 2007/11/06 追記:他のサイトで、このように検索ボックスを改変していたら Google から警告が来た検索ボックスのコードはデザインの自由度がないが、だからといって変更するとポリシー違反になり Google から警告がくるのでやめた方がよい
<!-- SiteSearch Google -->
<form method="get" action="<strong>https://perltips.twinkle.cc/search.php</strong>" target="_top">
<table border="0" bgcolor="<strong>#ffffff</strong>">
<tr><td nowrap="nowrap" valign="top" align="left" height="32">

</td>
<td nowrap="nowrap">
<input type="hidden" name="domains" value="<strong>perltips.twinkle.cc</strong>"></input>
<input type="text" name="q" size="<strong>14</strong>" maxlength="255" value=""></input>
<input type="submit" name="sa" value="<strong>検</strong>索"></input>
</td></tr>

<tr>
<td>&nbsp;</td>
<td nowrap="nowrap">
<table>
<tr>
<td>
<input type="hidden" name="sitesearch" value="<strong>perltips.twinkle.cc</strong>" id="ss1"></input>
</td>
</tr>
</table>
<input type="hidden" name="client" value="<strong>pub-1726939643040700</strong>"></input>
<input type="hidden" name="forid" value="1"></input>
<input type="hidden" name="channel" value="<strong>1731271362</strong>"></input>
<input type="hidden" name="ie" value="<strong>UTF-8</strong>"></input>
<input type="hidden" name="oe" value="<strong>UTF-8</strong>"></input>
<input type="hidden" name="cof" value="GALT:<strong>#8FABBE</strong>;GL:1;DIV:<strong>#FFFFFF</strong>;VLC:<strong>006699</strong>;AH:center;BGC:<strong>FFFFFF</strong>;LBGC:<strong>FFFFFF</strong>;ALC:<strong>8FABBE</strong>;LC:<strong>8FABBE</strong>;T:<strong>666666</strong>;GFNT:<strong>32527A</strong>;GIMP:<strong>32527A</strong>;FORID:11"></input>
</td></tr></table>

</form>
<!-- SiteSearch Google -->
トラックバック URL: https://perltips.twinkle.cc/trackback/231