カテゴリー

月別過去記事

みるくぜりー内 検索
Loading

モバイルアドセンスのphpを書き換えてみた

モバイル向けgoogleアドセンスのソースがあまりにひどかったので
やだなーとおもってたところperlのソースをみたら別の取得方法が分かったので
ちゃちゃっと書き換えてみました。
元のソースのどこがひどいと思ったかというと大きく二つ。

・includeで読み込むファイルが外部サーバーにあること。(HTTP経由怖い!)
・↑のせいでレンサバの設定次第では動かないかもしれないこと。(ヘテムルではうごいた!)
・グローバル変数をつかってたこと。(便利だけど個人的に嫌い!)


書きかえたソースがあんまり綺麗じゃないのは急いでたからということで
見逃してください!

★必要なもの
・PEARのHTTP_Request
・phpの知識

ソースは記事の続きにて。
1.元のphpソースから以下の値を控えておく。
 channelのID:$GLOBALS['google']['channel']
 clientのID :$GLOBALS['google']['client']

2.以下のソースのコメントに★が着いてるところの変数の値(青字)を
 1で取ってきた値と入れ替える。
include_once("HTTP/Request.php");
$base_url = "http://pagead2.googlesyndication.com/pagead/ads";
if($_SERVER['HTTPS']=="on"){
$scheme ="https://";
}else{
$scheme ="http://";
}

$host=$scheme.urlencode($_SERVER['HTTP_HOST']);
$dt=time();
$params=array(
//ユーザーが指定するところ
"ad_type" => "text", // 広告の形式-今のところtextのみ
"channel" => "*******", // ★channelのIDを指定
"client" => "*******", // ★clientのIDを指定
"color_border" => "336699", // 線の色
"color_bg" => "FFFFFF", // 背景色
"color_link" => "0000FF", // リンクの色
"color_text" => "000000", // テキストの色
"color_url" => "008000", // URLの色
"oe" => "sjis" , // sjis または utf8 または euc-jp など
"format" => "mobile_single", // mobile_single または mobile_double
"markup" => "xhtml", // chtml または xhtml または wml
"output" => "xhtml", // chtml または xhtml または wml

//以下は固定
"dt" => time(),
"host" => $host,
"ip" => urlencode($_SERVER['REMOTE_ADDR']) ,
"ref" => urlencode($_SERVER{"HTTP_REFERER"}),
"url" => $host . urlencode($_SERVER['REQUEST_URI']),
"useragent" => urlencode($_SERVER{"HTTP_USER_AGENT"})
);

foreach($params as $key=>$val){
$tmp[]=$key . "=" .$val;
}

$url=$base_url."?".implode("&",$tmp);
$req =& new HTTP_Request($url, array('timeout'=>30));
if (!PEAR::isError($req->sendRequest())) {
$ad= $req->getResponseBody();
echo $ad;
}


3.出来上がったソースを広告表示したいところに入れる。

一応動作確認はしたのですが、動かなかったら教えてください。
関数とかオブジェクトにすればもうちょっと楽になるかな?
と思いつつここで力尽きたのでこれ以上は多分やりません(/ω\)


コメント
携帯アドセンスを始めるにあたって、どのサイトが良いですか?
コメントする








   
この記事のトラックバックURL
トラックバック