flickr

iPhone対応サイト『iPhoneStyle』にFlickrの写真が貼れるようになりました。

iPhoneオーナーのための、iPhone対応サイト『iPhoneStyle』では、新たに、Flickrに登録してある画像を日記に貼れる機能を追加しました。

これにより、iPhone専用SNS『iPhoneStyle』で日記に画像を載せたい場合、

1.PCから直接アップロード

2.iPhomeからメールでアップロード

3.携帯百景の掲載URL

4.Flickrの画像URL

と選べるようになりました。

ますます便利なSNS『iPhoneStyle
http://iphone-sns.com/

OpnePNEでflickr用に小窓(cmd)を使いたいとき(そのまま使えるサンプル掲載)

OpnePNEにはCMD(小窓)という便利な機能があり、小窓が用意されているサイトであれば、そのURLを日記等に記載するだけで、自動的に画像やサービス、動画が埋め込まれたりする。(Google Map、YouTube、Amazon、kakaku.com、等々)

最近ではオンラインサービスであるflickrを利用している人も増えているので、flickr用に小窓(cmd)を使いたいという案件や、作りたい場面があるはず。
小窓の作成は一定のルールさえ分かっていれば、簡単に小窓を作ることが出来る。

flickrの画像URLには、登録者や状況により
http://farm1.static.flickr.com
http://farm2.static.flickr.com
http://farm3.static.flickr.com
http://farm4.static.flickr.com
と4種類で始まっている

flickr用の小窓を作る場合の問題点は、OpnePNEのCMD(小窓)がサブドメインのワイルドカードに対応していないこと。
つまり作成するJavascriptは、それぞれ決め打ちのファイル名であることが必要条件となる。

つまり、上記4つのサブドメインに対応するCMD(小窓)を用意したければ、4つのJavascriptをcmdフォルダに入れておく必要がある。

farm1.static.flickr.com.js
farm2.static.flickr.com.js
farm3.static.flickr.com.js
farm4.static.flickr.com.js

一見無駄なようだが、ワイドルカードで探させるよりサーバー負荷を考えると効率的でもある。

それぞれのサーバー(farm1、farm2、farm3、farm4)用にスクリプトを書いてもいいが、
今後サブドメインが追加された際に、ファイル名だけ変えてコピーできるようにスクリプトを作っておくと便利。

そのまま使えるサンプルスクリプトはこれ

———————————————————————

function url2cmd(url){
   var static_flickr_com = url.match(/^http:€/€/farm([0-9]+)€.static€.flickr€.com€/([0-9]+)€/([a-z0-9_]+)€.(jpg|jpeg|png|gif)/);
   if(static_flickr_com){
      var pid1 = RegExp.$1;
      var pid2 = RegExp.$2;
      var pid3 = RegExp.$3;
      var pid4 = RegExp.$4;
      main(pid1,pid2,pid3,pid4);
   }else{
      pne_url2a(url);
   }
}
function main(pid1,pid2,pid3,pid4){
   var html = ‘<img src=”http://farm’ + pid1 + ‘.static.flickr.com/’ + pid2 + ‘/’ + pid3 + ‘.’ + pid4 + ‘”>’;
   document.write(html);
}

———————————————————————

念のため、画像ファイル名をjpg、jpeg、png、gifの4種類に限定しているが、flickr.comを信頼して簡略化しても構わない。

上記スクリプトを
farm1.static.flickr.com.js
farm2.static.flickr.com.js
farm3.static.flickr.com.js
farm4.static.flickr.com.js
の名前でそれぞれ作成し、cmdフォルダにアップする。

これでflickr.comに対応したCMD(小窓)となる。