WordPress 携帯用ページに モバイル コンテンツ向け AdSense を表示する

2009年11月9日

当サイトはMobile Eye+を用いて、携帯と思しきアクセスには、携帯用に変換したページを送信しています。 現在は Ktai Style を使用していますが、以下の記事の内容はそのまま利用できます。

Ktai Style 1.70 以上で使用する際の注意点 (追記:2009-11-09)

以下の内容はそのまま適用できますが、1.70 以降のバージョン ((当方で使用中のバージョンは 1.71))では、GoogleAdsense 側で設定した色指定が無視されて出力されるようです。

ソースを見てみると、GoogleAdsense が表示されている部分の装飾は DIV タグに style 指定で行われているのですが、それがさっくりと削除されて出力されてますね。1.60ではその部分も出力されていたのですが、どうやらバージョンアップの際に仕様変更が行われた模様ですね。

現状では残念ながら作者氏が GoogleAdsense を使用していないので自力で対応しなければならないのですが、ソース追ってみてもさっぱりだったので断念。1.60 に戻すという手もありますが、1.70以降ではセキュリティ修正が施されているし悩ましいところですね。そこまで配色にこだわっていたわけではないので、そこは我慢ですかね。

……とあきらめていたんですが、利用するテーマが XHTML で書かれていればたぶん問題なく出力されるようです。redportal テーマではダメでしたが monolith テーマでは適切なスタイルで出力されていたので。具体的には ks_use_appl_xhtml() を使用する形でテーマを記述すればよいのかな? インラインスタイルシートの扱いが違うようなので。

携帯用テーマへの Adsense コードの挿入

PC向けのページには、Google Adsense を使用した広告バナーを表示していましたが、グーグルの携帯向けコンテンツ連動型広告、画像広告やドコモ対応 という発表もあったので、携帯用のページの方にも Adsense バナーを表示するようにしてみました。

Google Adsense の管理画面から、「AdSense 設定」→「モバイル コンテンツ向け AdSense」へと進み、ウィザードに従って Adsense コードを生成します。PHP が使える環境なので、スクリプト言語は PHP を選択しました。

で、これをMobile Eye+ で使用しているテーマテンプレートの適当な場所に挿入すれば良いと思ったのですが、それだと

PHP Fatal error: Call to undefined function google_set_screen_res()

というエラーが発生して、ページの表示がそこで異常終了してしまいます。

スクリプトの設置方法については Adsense のヘルプを見ても具体的な方法が書いてないのはどうなのかとは思いますが、検索してみると、Adsense コードを適当なファイル名 ((例えば adsense.php))で保存して、それを include してやれば良さげっぽい?

まぁ、ものは試しということで、Mobile Eye+ の defalut テーマ内の entry.php を

<?php the_date('', '<hr><u>', '</u><br>') ?>
[<font color="#008800"><?php the_title() ?></font>]<br>

<?php the_content(__('(more...)')) ?>
<?php wp_link_pages() ?>

//Adsense コードの include
<?php include("adsense.php")?>

<?php _e('Author:') ?><?php the_author() ?><br>
<?php _e('Categories:') ?><?php the_category(',') ?>

のように編集してやったら OK でした。

しかし、この辺の設置方法、もうちょっとわかりやすい解説なかったんですかね……。