Facebook投稿時にページのタイトルが表示されない
Facebookでリンクをシェアする時に、シェアしたいページのタイトルが正常に表示されない現象に悩まされていました。
デバッカーに投げる以外の解決方法は?
現在、「とりあえずデバッカーに投げれば解決する」という方法は広まっているようですが、根本的な解決方法については、ほとんど見当たりません。
また、記事公開のタイミングにあわせてデバッカーに自動で投げるような処理を組んでおけばよいという方法も見られましたが、現在はFacebookにログインしている状態でないとデバックページにアクセスできないようになっています。(2013年11月)
よって、自動でデバッカーに自動で投げる多くの処理は採用できません。
Facebook側のデータはリアルタイムではない
Facebookでシェアする際、そのページのタイトルやサムネイル画像が自動で読み込まれますが、その時に読み込まれるデータは、Facebookがクロールしたキャッシュ情報になっていいて、その時のリアルタイムな情報ではない事が多くあります。
つまり、多くの方がそう言われているように、一度Facebook側で意図しないデータがキャッシュされてしまった場合は、デバッカーを通してキャッシュをリセットする必要があるという事ですね。
結局は、意図せずFacebook側でキャッシュされてしまうことが原因であることが多い
例えば、非公開の記事URLがFacebookに知られてしまうと、アクセスエラーのページをキャッシュされてしまうのです。いざ、記事が公開されてリンクをシェアしようとすると、そのキャッシュが呼び出されるため、狙った通りのページのタイトルやサムネイル画像が表示されないという状況になってしまいます。
投稿画面やプレビュー画面でFacebookと通信しない
記事投稿画面や記事のプレビュー画面にFacebookと通信するような処理が裏側で組み込まれている場合、その記事のURLはFacebook側に伝わってしまうため、クロールされてしまう可能性があります。
開発側の注意として、投稿画面やプレビュー画面ではFacebookと通信するような処理を一切含ませないことが重要です。
今回は、フロント側に埋め込んでいたシェアボタンのソースを削除したところ、リンクをシェアした際にページのタイトルが正常に表示されない現象は無くなりました。
同じように困っている方がいれば、何か参考になれば幸いです。