Facebookのシェアボタンが、正しく動作しない場合の対処メモ
2012.07.18
昨日の夜頃から、Facebookのシェアボタンが上手く動作しないようになりました。どうやらJavaScriptの処理が正しく行なわれていないようです。
そこで、回避策が一つあります。
以下の様に、Facebookのシェアを行なうプログラムへ、
URLエスケープ処理をした値を指定し、新しいウインドウで表示させると、上手く動作することを確認しました。この処理はJavaScriptを利用していませんので、ほとんどのブラウザで利用できます。また、ログインする画面になったとしても、上手く動作します。
□ シェアのパラメータ指定例
http://www.facebook.com/sharer/sharer.php?u=
[URLエスケープしたシェアするページのURL]
□ HTMLの例(シェアするURLをhttp://wisp.tree-web.net/とした場合)
<a href="http://www.facebook.com/sharer/sharer.php?u=http%3a%2f%2fwisp%2etree%2dweb%2enet%2f">シェア</a>
□ URLエスケープ/アンエスケープするWebアプリケーション
URLエスケープ/アンエスケープ
□ JavaScriptでエスケープする場合
var url = encodeURIComponent("http://wisp.tree-web.net/");
□ おまけ
Aタグに利用する、シェアボタンを配布いたします。
ダウンロードし、適当な場所にアップロードしてご利用ください。
→
□ 2012/07/19
本日、表示がずれていますが、対処がされているようです。
Facebookはちょいちょい、表示の不具合があったりするので、しばらくは様子を見ることにします。
ずれてて、ちょっと腑に落ちませんが、仕方がありません。
※ これらは一時的な処置です。
Facebook側で対処された場合には、この処理をする必要はありません。(もちろん残してもかまいません)
また、細かい仕様に関しては、Facebook技術者関連ページや仕様のまとめサイトなどを参照ください。