2025年6月15日日曜日

日曜日, 6月 15, 2025

Google BloggerをカスタマイズしてHTMLを下手にいじくるとエラーが出て保存できないのは、Bloggerがとても厳格な標準化されたXMLを採用しているからです。

他社の無料ブログサービスで普通に書いていたHTMLがBloggerには通用しない。タグを閉じ忘れたなど普通のブログサービスプロバイダーは見逃してくれるようなポカもBloggerは見逃してくれない。

その意味では同社のGoogle AdSenseタグもBloggerの標準化XMLから照らし合わせるとエラーということになり、記事本体(post)に貼り付けたらエラーで保存できないわけです。

これはアドセンスタグが貼り付けられないのではなく、アドセンスタグに使われている括弧記号などがHTMLエンティティ文字ではないために弾かれているということです。

HTMLエンティティ文字に変換すれば、記事中にAdSense Tagを貼り付けられます。

Google AdSenseタグをHTMLエンティティ文字に変換

これが通常のAdSense Tag。このままHTML編集画面から貼り付けたらエラーになります。

<script type="text/javascript"><!--
google_ad_client = "pub-nnnnnnnnnnnnnnnn";
google_ad_slot = "nnnnnnnnnn";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script
src="http://pagead2.googlesyndication.com/pagead/show_ads.js"
type="text/javascript">
</script>

これをHTMLエンティティ文字に変換したのが次のコード。

&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-nnnnnnnnnnnnnnnn&quot;;
google_ad_slot = &quot;nnnnnnnnnn&quot;;
google_ad_width = 300;
google_ad_height = 250;
//--&gt;
&lt;/script&gt;
&lt;script
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;
type=&quot;text/javascript&quot;&gt;
&lt;/script&gt;

ここでHTMLエンティティ文字に変換したのは、次の3種類の記号です。

左括弧 < → &amp;lt;
右括弧 > → &amp;gt;
引用符 " → &amp;quot;

この3種類を変換すればBloggerのHTMLの中に自由に貼り付けることができますし、アドセンス広告が表示されます。

エンティティ文字に変換するとポリシー違反?

さて、アドセンスコードをHTMLエンティティ文字に変換することは、Google AdSenseプログラムポリシーに違反するかどうかが大変に気になります。

Blogcrowdsのフォーラムに「Google Adsense In Blogger Beta XML Update」というスレッドがあります。ここにアドセンスタグをHTMLエンティティ文字に変換したらプログラムポリシー違反になるかについてAdSenseチームからのひとつの回答が掲載されています。

AdSense Teamとの2回ほどのやり取り(再確認)で最終的には次のような結論に至ります。

And this is the answer

Second Email Response wrote:
Hi,
To clarify, while you are permitted to make minor edits in Blogger Beta, to allow the ad implementations to function properly, you are not permitted to alter the code for the purposes of changing size, font or hiding the Ads by Google logo.

Thanks for your understanding.
Sincerely,

The Google AdSense Team

Blogger Betaで若干の修正は認めます。但し、広告のサイズやフォントの変更、Ads by Googleのロゴを隠す目的でコードを変更することは許可されません。

Minor edits on Google Adsense Code for Blogger Beta/XML are allowed as long as the resulting Adsense Code generated by Blogger is exactly the same as given from Google Adsense Code Generator.

つまり、HTMLエンティティ文字変換されたアドセンスタグがWeb上に表示されたときに、ブラウザのメニューから「ソースを表示」してみます。そのソースに表記されているアドセンスタグと、管理ページで生成される広告コードとがまったく同じであれば問題は無いということです。

ここにご紹介したHTMLエンティティ文字変換をしてBloggerのHTMLに広告を貼り付けるという方法「単独」ではGoogle AdSenseプログラムポリシー違反には相当しませんのでご安心ください。もちろんタグを貼り付ける場所によってはプログラムポリシー違反になりますのでご注意ください。

0 comments:

コメントを投稿