こんにちは。@tomicciです。
仕事でかつかつな中、確定申告の締め切りが迫るという、今年も同じことをやってしまった。。
「やよいの青色申告 オンライン」も課金ユーザーになったことだし、来年は2月中には確定申告を終わらせることを目標にしよう。
さて、先日紹介した高クオリティ&センスの良い写真が多くアップロードされている写真素材サイト「Unsplash」だけど、Web制作者向けにAPIを提供しているので使ってみたよ!
Unsplashとは
Unsplashとは、クリエイティブコモンズCC0(Public Domain)ですごく雰囲気がいい写真が5万点以上集まっている写真素材サイト。

雑誌の表紙などで使われそうなオシャレな感じの写真が多く、サイトで利用すればちょっとワンランク上のセンスをアピールできるはず。
商用利用可能で、著作権表示の必要がない点も嬉しい。
写真をダウンロードして使用
通常利用の場合には、サイト内で気に入った写真を見つけ、ダウンロードして自分のサイトにアップロードして使用する。
自サイトなので、適切なサイズにリサイズして、画像圧縮率などを調整することで適切なファイルサイズの画像を表示可能な反面、沢山の写真を使用したり、ランダムに複数の写真を切り替えたいといった際にはその分手間が増える。
僕が管理している「おと風景」のトップページは、これまでUnsplashなどの無料写真素材サイトや、有料写真素材サイトなどからダウンロードしてきた写真をランダムに表示するといったことをしている。
特に最近は昼間、夕方、夜と写真をそれぞれ複数ランダムに表示し、さらに、季節ごとにそれらの写真もすべて入れ替えるといったことを始めて、写真のダウンロードやリサイズ、圧縮などの調整に結構時間がかかってしまう点が辛いところだった。
そんな時、Unsplashには画像表示用のAPIがあることを知ったので、これは是非!と思い導入してみたのだ。
アクセスしてみてください。
トップページで画像がランダムに表示されるのがお分かり頂けるだろう。
では、続いてUnsplashのAPIの使い方を紹介する。
Unsplash写真API(簡易版)
HTMLのimgタグや、CSSで設定する背景画像で即座に設定できる方法が提供されている。
例えば、自然の写真で、「1024px * 768px」の写真をランダムに表示したい場合は、こんな風に設定できる。
■HTMLの場合
<img src="//source.unsplash.com/category/nature/1024x768">
■CSSの場合
bg-img {
background: url(//source.unsplash.com/category/nature/1024x768) 0 0 no-repeat;
}
これで、こんな感じで写真が表示される。

実際には、1024px * 768pxの画像が出力される。
他には、特定のカメラマンの写真を使いたい場合は、
<img src="https://source.unsplash.com/user/erondu/1600x900">
と書いたり、ユーザー登録して、likeボタンをクリックした写真のみを表示したり、
<img src="https://source.unsplash.com/user/{USERNAME}/likes/1600x900">
新着の写真で、水のもののみを表示させる
<img src="https://source.unsplash.com/weekly?water">
と言ったことが可能。
たったこれだけで、Unsplashの写真を使用できるのだから素晴らしいね!
Unsplash写真API(高機能版)
さらにJSONを返却してくれる高機能なAPIが提供されていて、これを使えばより自由度高く写真や撮影者の名前など様々な情報を取得することができる。
PHPとRubyのサンプルコードまでご丁寧に用意されている。
よくあるAPIの仕様になっていて使いやすそう。
ただし、こちらはディベロッパー登録が必要だったり、初期状態では1時間に100リクエストまでの制限があり、正式に承認された後に制限が外れるといった仕様となっているようだ。
利用規定
利用にあたっては、必ず利用規定やFAQを一読しよう。英語だけどね。
利用規定やFAQには下記のような内容が書かれている。
・アダルトサイトや公序良俗に反するサイト、ギャンブル、薬物などのサイト、違法サイトでの使用はNG
・提供されている写真はクリエイティブコモンズのCC0
撮影者のクレジット表記は必要ないけど、撮影者の名前をクレジットしてくれればありがたいとのこと。
まとめ
これだけ素晴らしい写真と機能を無料で使えるとは本当に素晴らしいの一言。是非写真点数をどんどん増やしてもらえるといいね。日本の写真も使えると嬉しいな。月額980円〜1480円くらいなら契約してもいいかなと思えるくらいのサービス。
写真の追加やAPIの開発など、積極的な様子が伺えるので、Unsplashの今後が非常に楽しみ!