トップ «前の日記(2008-01-04(金)) 最新 次の日記(2008-01-06(日))» 編集

とた日記


2008-01-05(土) 晴 安静時心拍数 59 [長年日記]

_ section_footer2.rbプラグイン登場

section_footer.rbプラグインにYahoo!ブックマークを追加するのにコードを書き換えるのは面倒なので、ファイル持ちにされたようです。

欲を言うと、msgprogram.rbみたいに設定画面からできるとうれしいかも。

_ モバイル コンテンツ向け AdSense対応

暇人なのでgoogle_adsense.rbプラグインをほげってみました。いい加減なので適当に修正してください。

% cvs diff google_adsense.rb
Index: google_adsense.rb
===================================================================
RCS file: /cvsroot/tdiary/contrib/plugin/google/google_adsense.rb,v
retrieving revision 1.2
diff -u -r1.2 google_adsense.rb
--- google_adsense.rb   11 Jan 2007 02:55:26 -0000      1.2
+++ google_adsense.rb   5 Jan 2008 15:56:25 -0000
@@ -7,8 +7,48 @@
 # modified by TADA Tadashi 
 #
 def google_adsense( layout = nil )
+       if @cgi.mobile_agent? then
+               google_adsense_mobile
+       else
+               google_adsense_pc( layout )
+       end
+end
+
+def google_adsense_mobile
+       google_dt = sprintf("%.0f", 1000.0 * Time.now.to_f).to_s
+       google_scheme = @cgi.https? ? "https://" : "http://"
+       google_host = URI.escape(google_scheme + @cgi.host)
+       google_ip = URI.escape(@cgi.remote_addr || "")
+       google_ref = URI.escape(@cgi.referer || "")
+       google_url = google_host + URI.escape(@cgi.request_uri || "")
+       google_useragent = URI.escape(@cgi.user_agent || "")
+
+       google_ad_url = 'http://pagead2.googlesyndication.com/pagead/ads?'
+       google_ad_url << "ad_type=text"
+       google_ad_url << "&channel="
+       google_ad_url << "&client=ca-mb-pub-4425894582394676"
+       google_ad_url << "&dt=#{google_dt}"
+       google_ad_url << "&format=mobile_single"
+       google_ad_url << "&host=#{google_host}"
+       google_ad_url << "&ip=#{google_ip}"
+       google_ad_url << "&markup=chtml"
+       google_ad_url << "&oe=sjis"
+       google_ad_url << "&output=chtml"
+       google_ad_url << "&ref=#{google_ref}"
+       google_ad_url << "&url=#{google_url}"
+       google_ad_url << "&useragent=#{google_useragent}"
+
+       begin
+               timeout(10) do
+                       open(google_ad_url).read
+               end
+       rescue Timeout::Error
+       end
+end
+
+def google_adsense_pc( layout = nil )
        google_adsense_init( layout )
-       google_ad_client = "pub-3317603667498586"
+       google_ad_client = "pub-4425894582394676"
        google_ad_size = [
                [468, 60],      # 0
                [120, 600],     # 1

FirefoxのUser Agent SwitcherでDoCoMoを騙ってみたのですが、プラグインが展開された以降で文字化けが発生してしまうようです。