web-dev-qa-db-ja.com

METAおよびカスタムタグ内でmicrodataを使用できますか?

WebページのHEAD内にあるMETAタグ。 WebページのHEADと外部でmicrodataを使用すると、どのような違いが生じますか?たとえば、「datePublished」プロパティを見てみましょう。コンテンツ内のテキストを毎回探す代わりに、HEAD with METAで実装するだけではどうですか?

Googleの構造化データテストツールによると、特定のマイクロデータが検索エンジンに提示される場合、Webページのコンテンツにも提示される必要があります。その場合でも、META内に実装することで、コンテンツの一部にマイクロデータをラップするときに時間と眼精疲労を節約できます。

カスタムタグについて説明します。カスタムであることはわかりませんが、microdataコードが次のような「time」のようなタグを見たことがあります。

<time itemprop="datePublished">YYYY-MM-DD</time>
<text itemprop="datePublished">YYYY-MM-DD</text>

TIMEとTEXTはカスタムタグで構成されていますか、それともどこかに属する要素ですか?これらを自分のニーズに合わせてカスタマイズできますか?

ありがとう

4
Boris_yo

Microdataにはさまざまな標準があります。 Word microdataは、ページにデータが埋め込まれていることを意味します。 microdataの使用を開始するときは、itemtype属性で使用している標準を参照する必要があります。

例えば;

<div itemtype="http://schema.org/WebPage">

このitemtypeプロパティは、その<div>のすべての子のmicrodata形式を定義します。 schema.org標準を使用している場合、データはベースタイプThingで始まるタイプの階層を使用して定義されます。

さまざまなタイプのリストはこちらからご覧いただけます。 http://schema.org/docs/full.html

カスタムタグについて説明します。カスタムであることはわかりませんが、microdataコードが次のような「time」のようなタグを見たことがあります。

<time>タグに設定されたmicrodataは、itemtypeを定義する親DOM要素がある場合にのみ有効です。これにより、どのmicrodata標準が使用されているかがわかります。そのタイプによっては、有効なマイクロデータ形式か無効なマイクロデータ形式かはわかりません。

TIMEとTEXTはカスタムタグで構成されていますか、それともどこかに属する要素ですか?これらを自分のニーズに合わせてカスタマイズできますか?

カスタムタグは、XHTMLおよびHTML5でのみ機能します。 HTML5では、不明なタグはdisplay:blockとしてレンダリングされます。カスタムタグを作成し、そのHTMLをHTML5以外で表示すると、ブラウザではdisplay: noneとして無視されます。

Microdataは、カスタムタグとは関係ありません。 microdata属性を使用して、そのタグにデータを添付できますが、ブラウザによるそのタグの処理方法には影響しません。これは、すべてのmicrodata属性に当てはまります。

ドキュメントタイプがXHTMLの場合、Googleはカスタムタグのmicrodataにインデックスを付けると仮定します。データを無視する理由は誰にもわかりません。

WebページのHEAD内にあるMETAタグ。 WebページのHEADと外部でmicrodataを使用すると、どのような違いが生じますか?

Webページの<head>セクションにあるマイクロデータは、ページ全体の範囲に関するデータを定義します。現在のページがヘッダーのCollectionPageであると定義し、<div>タグの束をCreativeWorkオブジェクトとして定義できます。

Googleの構造化データテストツールによると、特定のmicrodataが検索エンジンに提示される場合、Webページのコンテンツにも存在する必要があります。そうしないと、そのような誤解を招く行為がペナルティになります。

これは、Googleによる曖昧なガイドラインの1つであり、私は彼らのサイトで同じことを読みました。

彼らが話していることを明確にする方法は次のとおりです。

  • ページヘッダーにmicrodataを含めることができます。それがあなたのために働くなら。 microdata標準の完全に有効かつ正しい使用法です。
  • Googleは、検索結果のヘッダーからマイクロデータを表示しません。ユーザーには表示されません。
  • Googleは、ページ上にあるものを表していないmicrodataを入力するとペナルティを科す可能性があります(つまり、Googleは、あなたがそれらをだまそうとしているかどうかを確認するためにいくつかの魔法の処理を行います)。
  • Googleは、ページの本文に表示されるDOM要素の属性として定義されているmicrodataにインデックスを付けます。
  • Googleは、マイクロデータをいつ、どのように、またはなぜ使用するかを教えません。複数のWebサイトにmicrodataがありますが、Googleはそれを使用したことがありません。 microdataは、検索結果の右側にサイドバーとして検索結果に表示されます(つまり、人気のある映画や俳優を検索します)。

Microdataをサポートする他の検索エンジンがあります。これらのクローラーは、Googleほど厳密ではありません。

たとえば、Yandexは埋め込みJSON-LDオブジェクトで見つかったマイクロデータのインデックスを作成します。

ツールを使用してmicrodataを検証してみてください。 Googleのテストツールよりも正確です。

http://webmaster.yandex.com/microtest.xml

4
Reactgular

マークアップできない形式では表示されないコンテンツに対して、<meta>要素とitempropsを使用できます。これは Schema.orgで「欠落情報および暗黙情報」と記述されている です。

HTMLを適切に構造化して、実際の要素に適用する必要がある場合that面倒で、私の見解では、おそらくより論理的で便利です。

<time>「構成」要素ではありません ですが、<text>は表示されます。おそらく、どのようなカスタマイズを意味するのかを説明する必要がありますが、実際には、ブラウザー、検索エンジンなどが要素をどのように解釈するかが重要です。

2
GDav

Microdataを使用できます HTML5要素で
したがって、 HTML5 (または エディターズドラフト )をチェックすると、 time要素 が表示されます。 =は定義されていますが、text要素はありません。

Microdataの観点から見ると、headまたはbodyで使用しても違いはありません。両方の方法が可能であり、有効です。したがって、これらの2つのスニペットは、同じMicrodataの名前と値のペアを生成します。

<!-- snippet A -->
<head itemscope itemtype="http://schema.org/Person">
  <meta itemprop="name" content="John Doe" />
  <link itemprop="url" href="http://john.example.com/" />
</head>
<!-- snippet B -->
<body itemscope itemtype="http://schema.org/Person">
  <div itemprop="name">John Doe</div>
  <a itemprop="url" href="http://john.example.com/">Link</a>
</head>

グループ化要素(headなど)を追加できないため、すべての場合にdiv要素のみを使用することはできません。つまり、headでいくつかの異なるアイテムにMicrodataを追加することはできません。 可能 、ただし複雑になります。すべてのプロパティにitemrefを使用し、すべてのアイテムにstyleのような要素を誤用する必要があるためです。

ただし、Microdataに使用する場合は、 linkmeta/bodyを使用することもできます にも注意してください。

<body>
  <p>Hi, I’m John Doe and this is <a href="http://john.example.com/">my website</a>.</p>
  <div class="hidden" itemscope itemtype="http://schema.org/Person">
    <meta itemprop="name" content="John Doe" />
    <link itemprop="url" href="http://john.example.com/" />
  </div>
</body>

これを実装する方が簡単な場合もありますが、コンテンツを複製する必要がないため、Microdataを表示可能なコンテンツと「結合」することが理にかなっています。 。

とは言っても、マイクロデータの利用者は、自分が望むことをすることができます。たとえば、Googleのような検索エンジンはもちろん、「隠された」Microdataを解析しないことを決定できます。

…これが難しいルールである場合、それはバカになります。たとえば、meta/link要素以外の場所に指定できないSchema.orgプロパティなどがあります。 itemListOrder property 英語以外のページ(これらのページには通常、英語の「昇順」を含めたくないため)、または additionalType property =(ユーザーがボキャブラリークラスへのリンクをクリックするのは理にかなっていないため)。

2
unor