9

Open Graph プロトコルを既存の HTML5 Web アプリケーションに導入しようとしています。不必要な部分を導入することなく、必要な RDFa データを組み込みたいと考えています。

HTML+RDFa 1.1ドラフトを見て、それをFacebook の Open Graph プロトコル ドキュメントlangと比較しました。要素に属性を設定するだけで、 htmlHTML5 対応です。

<html lang="en">
<head xmlns:og="http://opengraphprotocol.org/schema/">
    <title>The Rock (1996)</title>
    <meta property="og:title" content="The Rock"/>
    <meta property="og:type" content="movie"/>
    ...

最初は、HTML5 での RDFa のサポートについて、非常に多くのソースが有効な方法ではサポートできないと主張していたため、混乱しましたが、最終的にドラフトにたどり着きました。私は当面の問題の専門家ではないので、誰かがこれを見て、今日のブラウザでドラフトが享受しているサポートについてコメントしていただければ幸いです.

4

5 に答える 5

16

W3Cバリデーターはすべてについてうめき声を上げます

<meta property="whatever" content...

財産が

<meta name="whatever ...

代わりに、そうですか?Facebookが、あなたが主に気にかけていることであるなら、私は喜んで言います、それは後者の形式を許容するので、それを選んでください:

<meta name="og:title" content="My nice picture"/>
<meta name="og:type" content="article"/>
<meta name="og:url" content="http://foobar123.com/test/simple.php"/>

FBでテストする場合:注意してください、FBはページの解析をキャッシュします(グローバルに、Facebook側、ハードリロードは役に立ちません)ので、毎回「一意の」(しかし無意味な)パス情報またはGETパラメーターをURLに追加してくださいFacebookをテストするために何かを変更します-それの投稿:

mysite.com/test.php/bogusParam1
mysite.com/test.php/bogusParam2
mysite.com/test.php/bogusParam3
...
mysite.com/test.php?foo=hello
mysite.com/test.php?foo=howdy
mysite.com/test.php?foo=aloha
于 2011-03-18T20:58:12.957 に答える
6

HTML5 と HTML+RDFa 1.1 はどちらもまだ開発中です。つまり、現在彼女が言っていることはすべて変更される可能性があることを意味します。あなたの質問には2つの側面があります:

  • 有効ですか?
  • 相互運用性の問題が発生しますか?

有効性については、W3C バリデーターで仕様の実装状況を定期的に確認してください。実験的な HTML5 バリデータが組み込まれています。

HTML5 の名前空間は、まだ議論の余地があります。それらは、実際に意図されたものとは異なる DOM につながる問題を引き起こします。これは、私の 2 番目の質問である相互運用性の問題につながります。Live Dom Viewerでマークアップがどのように処理されるかをテストするか、Opera Dragonflyなどを使用して、ブラウザーでドキュメントの DOM 表現を調べることができます。

HTML5 DOM と RDFa のトピックをもう少し調べたい場合は、Jenni のブログ投稿を読むことをお勧めします。

これまでのマークアップは実際には問題ではありませんが、JavaScript を使用する場合は、名前空間と列の値に注意する必要があります。

于 2011-01-25T19:55:09.587 に答える
2

この 2009 年のドラフトでは、両方を検証するスキーマを構築しようとしているようです。

http://dev.w3.org/html5/rdfa/rdfa-module.html

于 2011-04-04T15:00:08.877 に答える
1

これはhtml5で行う正しい方法です:

    <meta property="http://ogp.me/ns#locale" content="en_US" />
<meta property="http://ogp.me/ns#site_name" content="xxxxxx" />
<meta property="http://ogp.me/ns#type" content="website" />
<meta property="http://ogp.me/ns#title" content="xxxxxxxxxxxx" />
<meta property="http://ogp.me/ns#description" content="xxxxxxxxxxxxxxxx" />
<meta property="http://ogp.me/ns/fb#app_id" content="xxxxxxxxxxxxxxxx" />   

など...お役に立てば幸いです

于 2012-07-31T22:39:25.203 に答える