Facebook アプリケーション内に opengraph オブジェクトであるページがあります。このオブジェクトのカスタム アクションをアプリから Facebook に投稿すると、正しく投稿されますが、like や like などの Facebook ソーシャル プラグインを使用すると、そのオブジェクトはそのオブジェクトとして投稿されるのではなく、私のFacebookアプリケーションのオブジェクトがタイムラインに投稿されます...だから私の質問は、アプリ内オブジェクトはopengraphアクションでのみ投稿できますか?
1 に答える
いいえ、Facebook リンターがページをクロールしてデータを取得すると、新しい OpenGraph オブジェクトが作成されるか、既存のオブジェクトのデータが更新されます。これはいくつかのケースで発生します。
- パブリッシュされたオブジェクトを参照する OpenGraph アクション
- 特定の URL に対してクリックされたいいね ボタン
- Facebook で共有されているページへのリンク (直接またはなどを使用したダイアログ
link
を介して)。
いいねボタンはおそらく実際のアプリケーション URL ではなく、Facebook 内の URL にリンクされているため、いいねボタンのクリックと OpenGraph アクションの発行で Facebook によって異なるページが解析されます。
通常のアプリケーションのキャンバスへのリンクは Facebook によって正しく解析されるため、いいねボタンはアプリケーション タブ キャンバスまたはアプリケーション ページを指していると思います。
更新:
OpenGraph タグの問題は、指定した URL に対してアプリケーションが404
( Not Foundステータス コード) を返し、HTTP (HTTPS ではなく) 要求のデータのみを返すという事実に関連しているようです。エラー コードが返された場合、キャッシュされたデータは保持され、正しいステータス コードが返されるまで更新されません。
更新 2:
実際の URL を提供したため、すべての未承認ユーザーのリダイレクトにより、実際のページではなくアプリケーションの詳細を取得することが明らかになりました。これにより、Facebook リンターによって実際の OpenGraph データをリッチにすることができなくなります。
ところで、すべての OpenGraph オブジェクトには、パブリックにアクセス可能な URL が必要であることに注意してください。