Blog

Facebook APIのV1.0は2015年4月30日で期限切れ、今のうちにV2.0に乗り換えておきましょう

WebAPI の有効期限切れなどのキーワードには敏感に反応してしまう職業病を患っている @azur256 です。こういうのを見ると早めに移行しておこうと思う癖があります。折角、手間暇かけないで良いはずの有料テーマを導入したのに、結局手で触っているのは困ったものです。FacebookAPI2 001

Facebook API の V1.0 は 2015 年 4 月 30 日に有効期限が切れるそうです


Gunosy 経由で知った以下の情報

いいね!ボタンは新しいコードに書き換えないと2015年5月以降動かなくなります(公式情報) | 編集長ブログ―安田英久 | Web担当者Forum

Facebook の新バージョン (V2.0) がリリースされて 1 年後の 2015 年 4 月 30 日に V1.0 の有効期限が切れるらしいです。実際の Facebook 公式の情報を見てみましょう。

Facebook Platform Upgrade Guide

このページには以下のように書かれています。

v2.0のAPIの開始に伴い、同時期に次の2つのバージョンが使用されています。

  • バージョン1.0: v2.0が開始される前日まで存在していたため、FacebookではAPIと呼ぶものです。 v1.0は1年間サポートされ、2015年4月30日に有効期限が切れます。
  • バージョン2.0: このアップグレードガイドで説明されるものです。 バージョン2.0は、最短でも2年間サポートされます。 最短で、2016年4月30日に有効期限が切れる予定です。

<中略>

FacebookのJavaScript SDKの上に構築されているウェブアプリの場合、少なくとも次の2つの変更を行う必要があります。

SDKへのパスの更新
どちらのバージョンのAPIを使用するかSDKに伝える

JavaScript SDKへのパスの変更
新しい機能をサポートするためにSDKの場所を変更しました。 次のパス
js.src = "//connect.facebook.com/en_US/all.js";
を経由する旧バージョンのSDKを含んでいる場合は、次のパスに更新する必要があります。
js.src = "//connect.facebook.com/en_US/sdk.js";

via: Facebook Platform Upgrade Guide
https://developers.facebook.com/docs/apps/upgrading


ブログの「いいね!」ボタンなどは Faceook の JavaScript SDK の上に作られていますし、過去に Facebook で払い出された JavaScript スニペットも古いものになっている可能性があります。そのため、そのコードを修正する必要があるということです。

具体的には、最初に紹介したブログにも記載されている通りですが、Facebook JavaScript SDK のパスの変更とバージョン情報を追加することが必要になります。ブログのテーマなどで Facebook の JavaScript を読み込んでいるところを表示すると次のようになっているはずです。

js.src = "//connect.facebook.net/ja_JP/all.js#xfbml=1&appId=xxxxxxxxxxxxxxx";

この all.js#xfbml=1 となっているところを sdk.js#xfbml=1&version=v2.0& に変更します。

js.src = "//connect.facebook.net/ja_JP/sdk.js#xfbml=1&version=v2.0&appId=xxxxxxxxxxxxxxx";

たったこれだけのことなので、2015 年 4 月 30 日はまだまだ先のことと思わずに、時間のある時にやってしまいましょう。

また、次のページから新しいバージョンのイイねボタンを作ることもできますので、コードを修正するのが難しい場合は、こちらで作って差し替えるのが良いと想います。
Facebook Like Button

最近はテーマの機能で「いいね!」ボタンが提供されているような場合があります。この場合は、テーマのバージョンアップを待った方が良いと思います。ただ、テーマが確実にバージョンアップされるか分からないような場合は、テーマのソースから該当箇所を探して修正する必要があるでしょう。

GRAPHIE のコードを修正しておく


私が使っているテーマは DigPress の GRAPHIE です。このテーマはきっと Facebook API の変更に対応してくれると思いますが、興味半分で自分で直してみます。今回やってみたのは DigPress の 1.0.6.4 に対してです。バージョンが変われば記載されている箇所も変わってくると思いますので、注意してください。

まず、該当するコードの場所ですが themes/dp-graphie/inc/scr/js_for_sns_objects.php の下記のコード。このコードの該当箇所を書き換えるだけです。

		echo '<div id="fb-root"></div><script type="text/javascript">(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id;js.async = true; js.src = "//connect.facebook.net/ja_JP/all.js#xfbml=1' . $fb_app_id . '"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));</script>';

次のようにパラメータを変更しましょう。

		echo '<div id="fb-root"></div><script type="text/javascript">(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id;js.async = true; js.src = "//connect.facebook.net/ja_JP/sdk.js#xfbml=1&version=v2.0' . $fb_app_id . '"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));</script>';

万一、上手く書き換えられていないと「いいね!」ボタンが表示されませんので、書き換えたら自分のコンテンツを見て、きちんとボタンが表示されているか確認してみてください。



最後まで読んでいただきありがとうございます。

follow us in feedly 左のアイコンをクリックして、このブログを Feedly に登録していただけると嬉しいです


Facebook ページでも情報を発信していますのでよろしかったら「いいね!」をお願いします

RSSリーダへの登録は こちら からどうぞ。

URL
TBURL

コメントを残す

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

フェイスブックでのコメント

Return Top