OGPの「fb:app_id」とか「fb:admins」って何のために必要なの?

9.20
2012

さて。OGPについてのエントリーを書いたばかりですが。

色々頑張って、このブログのOGPは↓こんな感じになりました。

<meta property="fb:app_id" content="1234567890" />
<meta property="og:type" content="blog">
<meta property="og:description" content="***記事抜粋***">
<meta property="og:title" content="***記事タイトル***">
<meta property="og:url" content="***記事URL***">
<meta property="og:site_name" content="Sunday In The Park">
<meta property="og:image" content="http://snowadays.jp/wp-content/uploads/ogplogo.png">

で、この一番最初の「fb:app_id」って何なのよ。

多くのOGPの設定方法に関するブログには、Facebook対策として必ず「fb:app_id」か「fb:admins」が必要だと書いてあります。
実際、そのどちらかが無いと、デバッガーでもエラーが出ます。

★何故、ページのOGPに「fb:app_id」か「fb:admins」の記述が必要なのか?

さて、話は変わりますが、Facebookのいいね!ボタン(Like Button)。
このブログにも貼りつけてありますが・・・。
実は大きく2種類あります。
1つは、TOPページの、各記事のダイジェストのところについてるやつ。
あれは各ボタンのコードを手書きで書いてます。
もう1つは、各記事ページの下にあるやつ。
これは、Zenbackの機能で表示させています。

コードを手書きしてる方ですが、FacebookのSocial Pluginから作ってるんですが、最近ある項目が増えました。

「このスクリプトは次のアプリのアプリIDを使用します」

どうやら、自分が何か一つでもアプリの管理人になっていると、強制的にいずれかのアプリをいいね!ボタンに紐づけなければならないようです。
ちなみに、一つもアプリを作ったこと無い、管理人になってない人には、この表示は出ないらしいです。

・・・?

よくわからないけど、いいね!ボタンのコードには、かならずFacebookアプリのアプリIDが必要になった、ってこと?

★何故、いいね!ボタンのコードに「appId=***」の記述が必要なのか?

今回のエントリーは、

・Facebookアプリの作成方法(アプリIDの取得方法)
・OGPの記述方法
・いいね!ボタンの作成方法

については一切触れません。
それらについては、ググれば大量に情報がありますので、ググって下さい。

■1.何故、ページのOGPに「fb:app_id」か「fb:admins」の記述が必要なのか?

さて、まずはこれ。
結論から言うと、この情報は「そのページや記事の管理者情報(Facebook的な意味で)」です

・「fb:app_id」が記述されている場合は、該当のFacebookアプリがそのページの管理アプリで、そのアプリの管理人(複数可)がそのページの管理人である、ということになる。

・「fb:admins」が記述されている場合は、該当のFacebookユーザーがそのページの管理人である、と言うことになる。

じゃあ、「こいつが管理人だ!」とサイトに記述すると、どうなるのでしょう。

実は、面白い機能が使えるようになります。

Facebookインサイトと言う機能はご存知でしょうか。
Facebookが提供している、アクセス解析ツールです。
Facebookページを運営している方には「インサイト」という言葉はなじみ深いでしょうが、Facebookページの中で見れるやつだけではないのです。

・Facebookインサイト
https://www.facebook.com/insights/

↑こっちにアクセスすると、自分が管理しているFacebookページ、Facebookアプリ、そして自分が管理人であるウェブサイトのインサイト情報が見れます。

つまり、サイトのOGPに管理人情報を記述すると、該当のユーザーはFacebookインサイトから自分のウェブサイトのアクセス解析が可能になるんですね。

インサイトTOPの右上、「ウェブサイトのインサイト」をクリックして、調べたいサイトのドメインを入力。
ソースに記述したアプリを選ぶか、adminsを記述してる場合は、(自分)を選択する。

具体的にどんなアクセス解析が出来るのか、と言うのは、正直まだ私も良く分かってないので、他で調べて下さいw

ただ一つはっきりしてるのは、Facebookならではの情報が取得できる、ということです。

(例)
・いいね!ボタンのクリック数
・いいね!を押されて生成された記事の表示回数、クリック数
・送信ボタンのクリック数、他 ※LikeボタンでSendオプション付けてる場合
・コメント機能使ってる場合は、その件数やFacebook内での電波数、反応数など

Facebook内の伝播数・波及数・反応数など、これらは他の方法では取得・解析できない情報ですね。

ま、ようはページのOGPには「fb:app_id」か「fb:admins」を記述しといたほうがいいってことですな。

■2.何故、いいね!ボタンのコードに「appId=***」の記述が必要なのか?

さて、こちらはまた別の話です。
前述の通り、いいね!ボタンのコードには「appId」が必要なようです。

これが無いと、デバッガーでも怒られます。
しかも、「appId」の設定が無いいいね!ボタンは、押されてもフィードに流さないよ、的な脅しも出ます。

Admins And App ID Missing:
fb:admins and fb:app_id tags are missing. These tags are necessary for Facebook to render a News Feed story that generates a high click-through rate.

Like Button Tag Missing:
og:type is missing. The og:type meta tag is necessary for Facebook to render a News Feed story that generates a high click-through rate.

さて、ここからはあくまで一説でしかありませんが、どうやらFacebookは、世の中のいいね!ボタンの管理者を把握しておきたいようです。

どういうことかと言うと、海外ではこのいいね!ボタン、結構裁判沙汰になったりとかいろいろトラブルも起きてます。「いいね!詐欺」みたいな。
で、いわゆる「不正ないいね!ボタン」とでもいいましょうか、そういうやつの監視に苦労してるわけです。
例えば、外部のアフィサイトにプラグインのいいね!ボタンがあって、スクリプト組んでそのボタンを押せばポイントがもらえる、とか。
そんなの簡単に作れちゃうわけで。

そういう輩の対策として、Facebookが考えた作戦が、この「Facebookアプリ必須」作戦。
現状、Facebookアプリを作成するにはアカウントの認証作業が必要になります。
認証作業は、クレジットカードもしくは携帯電話が必要です。

ただ・・・。
アプリのIDなんて簡単に想像付くし、他人のサイトのソースからIDコピペしちゃえば、他人になりすましたいいね!ボタンのコードは簡単に作れちゃうんですけど・・・。

それに、例えばZenbackのいいね!ボタンとか、どうしてるんですかね。
設定のとこにアプリID入れる欄とかは特にないので、今のところは「appId」は無視?
それとも、適当なアプリID入れてるのかな?
ていうか大手ブログサービスにデフォでついてるオプション機能とかも同じ問題がある気がするんだが。

まあ、今後この辺はもっと厳しくなるんでしょう。
(タグ発行時に、入力されたIDのアプリの管理人に承認メールが飛ぶ、とか)

はっきりと言えるのは、今のうちに自分でアプリ作って正しいコードにしといた方がいいだろうってこと。
別にむずかしい作業じゃないんだし。
Facebook様のことですからね。ある日突然、アプリID入ってないボタン全部殺すかも知れないしね。

ということで、Zenbackさんにはこの辺の対応お願いしたす。
(実はしてるのかな?私が知らんだけかい?)