楽天の店舗の中の人へ楽天Webサービス利用者から愛をこめて
要するに、楽天のAPIで取得できる情報には「いまいち」なものも少なくないのでなんとかしないとAPI利用者≒アフィリエイターとして商品を紹介してくれる人々から嫌われてしまうかもしれない、というお話。 ちなみに筆者は商売柄いろいろ試しているというだけで実際のアフィリエイターではないので視点がズレてるのかもしれないが。
注文情報等を抽出するための店舗向けAPIはだいぶ前からあったのだが、店舗向けだったのでそう大きな話題になってはいない。この1月に公開された【楽天ウェブサービス】RAKUTEN WEBSERVICEは完全に一般向け。特定のURLにGETリクエストを送るだけで商品情報をXML形式で取得できる。
サービス方式自体はそう珍しくないが、やはりジャンルや商品の数は圧倒的である。今後、アフィリエイターの皆さんがこぞって使うことになるだろう。
ところで、いろいろ試してみてわかったのだが、商品名(itemname)や商品説明(itemcaption)の部分がまずいことになっているデータが結構あった。原因は店舗側の商品情報の編集の仕方にある。
たとえば、文字飾りや区切り文字のつもりでテキストを駆使しているのがアダになっているケース。
XMLデータ
楽天上での実際の商品画面
XMLデータ実際の商品画面上では問題なく読めても、データだけを抽出するAPI経由ではこんなことになってしまう。これらのデータを使って作ったアフィリエイト用のコンテンツの見栄えはかなりお粗末なものになるだろう。
楽天上での実際の商品画面
問題はやはり店舗の中の人が商品情報を楽天に投入する段階にある。 商品説明の部分ではHTMLタグを使ってもよいのだが、楽天API経由で出力されるときはタグはすべて抜かれてしまう。 どうしても区切り線を設けたいならhrタグかなにかでも使い、細かい調整をCSSでやるべきなのだが、そこを「-----」といったテキストで間に合わせようとしたのがアダになっている。
本来は「テキスト」は「データ」を表現するためのものであって、「デザイン」を表現したいならHTMLタグを使おう、という、一見何の変哲もない原則がここでは重要な意味を持つ。 また、商品名の部分に商品名以外の情報をいれるべきではないことも当然である。
この問題はまた、楽天の商品情報登録機能がデータとデザインに明確な分かれ目を設けていない という潜在的な問題も浮き彫りにする。商品情報にHTMLタグを使えることは店舗の個性を出すうえで重要な自由度だが、データだけをやりとりするためのAPIという概念とは相反してしまう。
とにかく、情報とデザインとをごっちゃにしてはいけないのだ。 楽天大学ではこういう概念を店舗に教え、伝えきれないのだろうか。 素人さんはPC用の画面の見た目をどうにかするだけで精一杯だろうしなあ。
ほかにも、楽天の商品画面上では「(この商品に関する)詳細はこちら」とかいってリンクをはっているのが、API経由で指摘するとaタグが抜かれてしまうため、「詳細はこちら」という文字列だけになってしまって商品説明としてはまったく意味を成さなくなっているケースもかなりあった。
で、アフィリエイターの皆さんはこれに対処するためにどうするか?
APIで得られるItemCaption項目の活用はあきらめて、画像と商品名と価格だけを活用する。
これはこれでアリだと思う。実際、アマゾンなんかのProductDescription項目を表示しているアフィリエイトサイトは少ないし。 ただし、少ない情報で商品の羅列だけ、というのは、アフィリエイトサイト自体の質の低下を招くのではないだろうか。自動販売機じゃないんだから。-
そのうちAPI取得できるようになるのであろう「商品レビュー」の内容をItemCaption代わりにすべく、それをじっと待つ。
これもやはりアマゾンのAPIを使っているサイトによく見られる傾向(のような気がする) -
APIで取得できるデータにhtmlのタグをも含めた商品説明を使えるようになるのを待つ。
ItemCaptionの内容をCDATA扱いにしてしまうことで、なんというか、楽天の店舗サイト上に映っているHTMLをそのまんまAPIでも取得できる、みたいな。たぶんそんなサービスはされないとは思うが。 -
店(shopcode)で判断する。
これをされると店舗側はかなり怖い。 つまり、API取得でのItemCaptionがちゃんとした情報になっている店ではほとんどちゃんとしてるし、 そうでない店では多くの商品においてそうでない。したがって、itemcaptionがイケてないと判断した店をshopcodeで判断してはじく(他にも店あるしー)→当分あるいは半永久的にアフィリエイターに紹介してもらえない→じわりじわりと店の売り上げが・・・
ちなみに、HTTP/HTMLにおいてデータとデザインの区別をうまいこと明確化しながら表現しようという話にはたとえばmicroformatsといった概念が提唱されており、既に一部で使用されているらしい。が、本格的に普及するかというと。。。?
でまあ、こういうことって楽天の中の人に限らず他のECサイト構築ソフトウェアあるいはサービス一般に言えることである。RSSがどうだのWebサービスAPIだのなんだのと、「データだけを見せてくれ」という要求にも簡潔に答えるためには、Webサイトの設計段階でそもそもデータとデザインとの区別というか線引きというかそのへんうまくやらないと、あとあと困ることになる。




