2

私は魔女のページへのリンクのようなFacebookを持っています私は完全な制御を持っていません:私はページ<body>のを変更することはできますが、変更することはできません<head>...そこで私は新しいページにいいねボタンのリンクを設定しようとしました私は完全に制御し、このページでopengraphメタタグを設定し、元のページにリンクするog:urlを設定します。

しかし、最終的にFacebookはog:urlからメタデータを抽出しようとし、前のページのメタタグを上書きします... og:urlからではなく、最初にフェッチされたURLからメタデータを取得したいということを伝えることはできますか?

4

2 に答える 2

5

で定義された URL とは異なる URL を持つページから OpenGraph メタデータを抽出するようにリンターに指示する方法はありませんog:url

リンターは常に、チェーンの最後に定義されている URL からメタ タグを抽出しますog:url...

他のことを行う方法があります(ニーズに合う場合と合わない場合があります):

そのページを指すことを含め、必要なすべての OpenGraph を持つ中間ページを作成できog:urlます (制御できないページではありません)。そのページにはメタデータと最終ページへの JavaScript/メタ リダイレクトのみが含まれるため、この中間ページに到達したユーザーは正しい最終ページにリダイレクトされます。

これにより、すべてのいいねが「最終」ページではなく中間ページに関連付けられることに注意してください。

于 2012-04-05T09:16:56.363 に答える
0

どの URL が OG メタデータを持つことができるかに関して、Facebook Debug/linter にバグがあると思います。OG:URL は正規である必要があります。これは、今日、明日、そして 10 年後も機能する URL であることを意味します。共有された URL は一時的なものであり、Web 開発者は「取得」URL が持続することを保証できません。正規 / og:url は、og: タグを持つ最終的な宛先にリダイレクトされる場合があります。

しかし、FaceBook リンターのバグは、og:url を過ぎたリダイレクトをたどらないことです。つまり、 http://example.com/persistant/123の場合、 http://example.com/year/month/title/persistant_123などのわかりやすい URL にリダイレクトされるだけです。おそらく、FaceBook の誰かが、「正規の URL からリダイレクトをたどる必要がある」という解釈を明確にすることができます。

Google の意見Google ウェブマスター ブログ: Canonical を指定する

rel="canonical" はリダイレクトにできますか? はい、正規 URL としてリダイレクトする URL を指定できます。その後、Google は通常どおりリダイレクトを処理し、インデックスに登録しようとします。

現在の FaceBook Debug/Linter のプラクティスでは、OG:URL に到達したら停止し、標準の HTTP リダイレクトに従って OG タグに到達しません。私は、Google の Canonical の定義は、Web 開発者が期待しているものよりも標準的だと思います。

于 2012-04-26T19:03:10.367 に答える