URL自動設定タグ

コンテンツマッチさせるアドレスを指定する
<script src="http://dynamic.rakuten.co.jp/rcm/1.0/i/json?callBack=RakutenDynamic&developerId=[YOUR_developerID]&affiliateId=[YOUR_affiliateID]&url=[コンテンツマッチさせたいページのアドレス]" charset="utf-8"></script>
↑このタグの代わりの、マッチさせるページを自動的に設置ページにするタグ。
複数のジャンルのページに設置する場合でも同じタグが使えるようになる。
上のタグと下のタグはどちらか一個しか同一ページに置いちゃダメです。


↓アドレス自動指定タグ
<script>
var developerId="[YOUR_developerID]";
var affiliateId="[YOUR_affiliateID]";

var url=location.href;
url=encodeURIComponent(url);
var script=document.createElement('script');
script.src="http://dynamic.rakuten.co.jp/rcm/1.0/i/json?callBack=RakutenDynamic&developerId="+developerId+"&affiliateId="+affiliateId+"&url="+url;
script.charset="utf-8";
document.body.appendChild(script);
</script>
developerIdとaffiliateIdは自分のものを入力。
var url=location.href;
のところを
var url=document.referrer;
に変えれば広告をフレームで分離させることもできると思う。
<iframe>用の広告ページを作成すればサイズ、デザイン自由なAdSense代替広告を作ることもできると思う。



楽天ダイナミックアドスクリプト


posted by ST at 2009-09-09 03:07 | 楽天ダイナミックアド | このブログの読者になる | 更新情報をチェックする

デベロッパーIDが悪用される危険性について

楽天ウェブサービスではレスポンスタイプにJSONPという仕様があります。
このスクリプトでもJSONPを使用していますが、
JSONPというのは、<script src="JSONPのファイル">といった形で呼び出し、
レスポンスをJavaScriptで使用するような規格です。

JavaScriptはブラウザがダウンロードしてブラウザで処理するプログラムですので、プログラムの内容は他人が見ることができます。

楽天ウェブサービスの利用規約の「第5条(デベロッパーID)」
に、
2.利用者は、デベロッパーIDを他人に知られることがないよう責任を
もって管理するものとします。当社は、入力されたデベロッパーID
が当社が発行したものと一致することを所定の方法により確認した場
合、利用者による使用があったものとみなし、それらが盗用、不正使
用その他の事情により利用者以外の者が使用している場合であっても、
それにより生じた損害について当グループは一切責任を負いません。

という条項があります。

楽天ウェブサービスでJSONPを使う場合、
<script src="APIアドレス">
のようにして使いますが、このAPIアドレスには、他人に知られてはいけないはずのデベロッパーIDが含まれます。
JSONPはこの様な方法でしか使えないので、
「楽天ウェブサービスでJSONPを使用した場合、他人がデベロッパーIDを知ることができる。」
となります。

楽天の公式サンプルスクリプトでも同じように第三者がデベロッパーIDを知ることができるようになっているので、
楽天ウェブサービスのJSONPは、あきらかに利用することで規約違反になる機能です。

このページなど、
楽天の人がこの問題について認識していて、
「規約内容の改正も含めて現在検討しております。」
って書いてあるから、
規約違反をしてかまわないってことだと思うが、
仕様または規約が変わらない限り、
デベロッパーIDを悪用された場合、デベロッパーIDが停止されるなど措置がとられる危険が十分にあると思うので理解するように。
posted by ST at 2009-09-07 09:20 | 楽天ダイナミックアド | このブログの読者になる | 更新情報をチェックする

楽天ダイナミックアド

やっぱ、デベロッパーIDの公開まずいようなんで、サンプルの公開停止します。
ソース:http://webservice.rakuten.co.jp/blog/2010/02/22/20100222_info2/
楽天WebサービスにはJSONPでレスポンスを返す機能がありますが、
レスポンスにデベロッパーIDが含まれますので、JSONPをクライアントサイドで処理する場合、隠すことはできません。
JSONPの使用は規約違反になると判断します。


楽天ダイナミックアドAPIのクライアントサイドアプリケーションです。

コンテンツマッチの広告ってどこの業者のも<iframe>表示だからインラインテキストの広告ってないんだよね。
ってわけだが、楽天ダイナミックアドAPI使えばサイズ自由!
ってことに気づいたんで作ってみました。

CGIなどは使わずJavaScriptのみですので、レンタルブログのファイルアップロード機能でファイルをアップすればレンタルブログなどでブログパーツとして使うこともできます。

使用するには、楽天アフィリエイトに登録し、
デベロッパーIDとアフィリエイトIDを取得する必要があります。


楽天ダイナミックアドについて
ウェブアドレスを指定すると、そのアドレスのページを解析し、
コンテンツにマッチした商品を取得できるAPIです。


楽天ダイナミックアドのコンテンツマッチについて
楽天の中の人じゃないんで間違えてるかもしれないけど、
マッチさせるページの
<meta name="keywords" />
で設定したページキーワードが重要な気がします。
いらない広告がでるようなら、<meta>から邪魔なキーワード削除すると消えるかもしれん。


重要!必ず見るように。
デベロッパーIDの公開について


設置方法はサンプルページと一緒。
サンプル
ダウンロード
posted by ST at 2009-09-07 08:49 | 楽天ダイナミックアド | このブログの読者になる | 更新情報をチェックする

サンプル

<a id="RakutenDynamic" href="http://web-sozai.seesaa.net/" target="_blank">楽天ダイナミックアドスクリプト</a>
↑シンプル表示
このタグの位置に表示される。
id属性で表示タイプが変わる。
target属性は変更可能。
楽天ダイナミックアドスクリプト


<a id="RakutenDynamic1" href="http://web-sozai.seesaa.net/" target="_blank">楽天ダイナミックアドスクリプト</a>
↑商品番号指定
RakutenDynamicの後ろに0-4の数字をつけると商品がかぶらずに最大5個まで好きな位置に設置できる。
楽天ダイナミックアドスクリプト


<a id="RakutenDynamicRotation" href="http://web-sozai.seesaa.net/" target="_blank">楽天ダイナミックアドスクリプト</a>
↑ローテーションインライン表示
楽天ダイナミックアドスクリプト


<div style="position:relative;overflow:hidden;width:468px;font-size:small"><a id="RakutenDynamicSlide" href="http://web-sozai.seesaa.net/" target="_blank">楽天ダイナミックアドスクリプト</a>&nbsp;</div>
↑移動するリンク表示
領域幅を固定する必要があるので、このタイプのみ親ブロックが必要。
親ブロックには、position属性でrelativeやfixedなどを指定する必要がある。
親ブロックはoverflow:hidden;ではみ出し非表示にする。
親ブロックのwidth属性は変更可能だが、pxでかならず指定。
font-sizeの指定は必要ないが、nomalだと横幅468pxで収まらない商品がたまにある。
<div>この範囲</div>に&nbsp;を入れて高さを確保する必要がある。(height属性で指定してもいい)
<div>ではなく、display:inline-block; な<span>とかに変更すればインラインブロックにできる。



<script src="rtda.js" charset="utf-8"></script>
↑スクリプトを読み込む。
ディレクトリが違う場合はsrc属性を変更。



<script src="http://dynamic.rakuten.co.jp/rcm/1.0/i/json?callBack=RakutenDynamic&developerId=[YOUR_developerID]&affiliateId=[YOUR_affiliateID]&url=[コンテンツマッチさせたいページのアドレス]" charset="utf-8"></script>
↑楽天ダイナミックアドAPIのアドレス
詳しくは公式サイトを確認してください。
楽天ダイナミックアドAPIはRESTとJSONPがありますが、JSONP用のアドレスです。
callBackはRakutenDynamicを指定。
developerIDとaffiliateIDは楽天ウェブサービスで自分のIDを確認してください。
urlはURLエンコードされている必要があるらしい。
どの文字をエスケープすればいいのか公式サイトに書いてないのでどの文字をエスケープする必要があるのか分からないが、公式サンプルでは「.」「/」「:」をエスケープしてある。(この3つの記号はエスケープしなくても楽天側に正常に渡せる気配。「&」「=」だけエスケープすれば問題ないんじゃないだろうか。)
「:」は「%3a」
「/」は「%2f」
「.」は「%2e」
指定アドレスが解析され、マッチした広告が表示できるらしい。
このタグの代わりに、urlに現在のページアドレスを自動設定するタグも作りました。



表示位置用のタグ1個以上と<script>タグ2個を設置すれば使えます。
(同一のIDのタグは1個しか設置できない。)

↓楽天ウェブサービスを使用する場合、使用するウェブページにクレジットを表示する必要がある。

楽天ウェブサービスセンター

クレジットのタグは公式サイトからもってくる。
posted by ST at 2009-09-07 07:27 | 楽天ダイナミックアド | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。