WordPressのFlickr画像取得プラグインを自作しちゃおう

Pocket
email this

 先日Flickr Album Galleryを紹介して、「100%満足ではないけどこれでやる!」と言ったのですが、どうしても気にくわない部分があって、迷った挙句やめました。「100点じゃない」と言った理由は、以下です。

    ●Flickr側で都度アルバムを作成しなければならない。
      →こんなもんやってたら1年後にはFlickrアルバムが手に負えなくなるw
    ●一言(description)が利用できない。
      →今、写真の下に載せている感想などです。これないとだめじゃん。伝わらないよ。
    ●正直「キーワード検索で出てきた画像を全部並べる」だけで良い。
      →どういうわけかこの動作だけするプラグインがない。まあ自分でやれってことなのかな。

 ていうか、今、christinayanのサイトでFlickrAPIのPHP使って画像取得してんじゃん!(^_^;)
 WordPressのプラグインはPHPだから、こいつ組み込めばいいじゃん!
    wordpress%e3%81%aeflickr%e7%94%bb%e5%83%8f%e5%8f%96%e5%be%97%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e3%82%92%e8%87%aa%e4%bd%9c%e3%81%97%e3%81%a1%e3%82%83%e3%81%8a%e3%81%86-1

 ということで、以下の作業をしてみようと思います。

    1.今使っているFlickrAPIをWordpress向けに合わせる。
    2.プラグインに表示されるよう登録する。
    3.プラグインのショートコードに対応する。
    4.記事にショートコードを記述する。


やってみよう

 さてなにから始めればいいのか…名前か。
 ではプラグイン名は、「ボルジャーノンflickr-search」と名付けよう。

1.プラグインの下準備

 Wordpressのディレクトリのうち、プラグイン用のそれがあるので、フォルダとPHPファイルを配置します。
  1-1.wp-content/plugins 以下に flickr-search フォルダを作成し
  1-2.flickr-search フォルダの中に flickr-search.php ファイルをアップロードしました。
 Apache的にはこんな感じ。
wordpress%e3%81%aeflickr%e7%94%bb%e5%83%8f%e5%8f%96%e5%be%97%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e3%82%92%e8%87%aa%e4%bd%9c%e3%81%97%e3%81%a1%e3%82%83%e3%81%8a%e3%81%86-3
  1-3.PHPの中身は以下だけ記述しておきました。




2.Wordpress側でプラグインが認識されていることを確認

 [プラグイン]→[インストール済みプラグイン]を開いてみましょう。仲間が増えております!
 ひとまずこの時点で[有効化]しちゃいました。
wordpress%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e8%87%aa%e4%bd%9c-1



3.コードのお引っ越し

 あとはごりごり[編集]するだけです。
 元々使っているソースを flickr-search.php に記述します。まあ既存のコピペですが。

 引数は1つで、検索文字を渡すようにしてみました。word という単語をキーにします。
 関数名は「flickrsearch」としておきました。




3.ショートコードとして登録する

 こいつがキモです。記事に括弧([flickrsearch・・・])って書けばいいだけのおまじないですね。PHPの最後に下記を書きました。

 ということで元のコードを持っていればこれで終わりです。あっけない。あと言うべきことは、
  ・add_shortcodeの2つの引数は、第一引数がショートコード名で、第二引数が関数名です。
  ・引数のwordが、記事中にて利用する引数となります。
ってところだと思います。



完成

 さて、記事中に[flickrsearch word=”aomori contemporary”]を打って、[プレビュー]してみましょう。「Flickrで『aomori contemporary』というキーワードで検索する」という意味合いです。
wordpress%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e8%87%aa%e4%bd%9c-4

wordpress%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e8%87%aa%e4%bd%9c-5

 おー、出た。
 めでたしめでたし。おひたしおひたし。
 今日はほうれん草のおひたしで乾杯だね。
 ちなみに他人の写真が出ないのは、getFlickrImages()関数内で、『私のユーザIDの中から検索する』って予めフィルタをかけているからです。

 色々言ってたdescriptionはクリックしたときのライトボックスの下部に出ます。
wordpress%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e8%87%aa%e4%bd%9c-6

 プログラミングに関しては、自分のことをOpenGL、画像処理、トレーディング関連しかできない(ネットとDB関連は特にだめっす…今の時代これできないとか無価値じゃんという劣等感に苛まれる。)、ごみエンジニアだと思うことがよくありましたが、まあどうにかなるもんだ。こんくらいなら。
 というのも、技術を世の中の記事として公開してくださっている諸先輩のお陰。本当に感謝です。

 で、ところで、これを皆に使ってもらえるようにするにはどうすればよいのかね? 調べるか。恩返しのためにどんどん出していこう。



参考サイト

WordPressのショートコードを自作してみる – WEB PIXEL
WordPressのプラグインを開発しよう(初級編) – WEB PIXEL
(WordPress) 自作のプラグインを作ってみる~その1:プラグインを準備する – 日々の覚書…日常のことも少しだけ
WordPressでテンプレート/プラグイン/関数の作成方法(超簡易版) – MAXAR


コメントを残す