RSS ストリームに Google AdSense を追加しようとしています。「RSS 向け AdSense」はサードパーティに依存しているため、使用したくありません。
RSS では、RSS コードを壊すため、より小/大なりの文字を使用できないことに気付きました。わかりました、htmlentities() 関数を使用してそれらをエスケープします。次のように、ストリームに基本的な HTTP を表示すると問題なく動作します。
$bottom = '<p><a href="http://www.domain.com/image-' .$row['id']. '.html" target="_blank">Post a comment ></a>';
echo htmlentities($bottom);
しかし、Google AdSense コードでまったく同じことをしようとすると、何も表示されません。
$ad_code = '<script type="text/javascript"><!--
google_ad_client = "pub-37909010735xxxx";
/* banner, RSS Feed */
google_ad_slot = "xxxxx";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>';
echo htmlentities($ad_code);
最初は、Google が AdSense の使用をブロックして、ユーザーに RSS 向け AdSense サービスを強制していると思っていましたが、その後、Slashdot などのいくつかの人気のある Web サイトがまさに私がやりたいことを実行していることに気付きました。
確かに私は何か間違ったことをしていますが、指を置くことはできません。
編集:これは出力です
<description><a href="http://www.domain.com/image-8551.html" target="_blank"><img src="http://www.domain.com/images/1250670754.jpg" /></a><br /><br />I guess being called snuggly-bumpkins was too much?<script type="text/javascript"><!--
google_ad_client = "pub-3790901073xxxxx";
/* banner, RSS Feed */
google_ad_slot = "xxxxxxx";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><p><a href="http://www.domain.com/image-8551.html" target="_blank">Post a comment ></a></description>