最近初めてマイクロフォーマットを使わなければならなかったmicrodataと次の問題に遭遇しました。 ISO形式ではない通貨を表示する必要があります。 microdataで理解したように、「content」属性に実際の値を提供できます。
<span itemprop="price">123</span> <span itemprop="currency" content="RUB">руб.</span>
私がそれを好きなら、microformatsでは:
<span class="price">123 руб.</span>
Googleの構造化データテストツールで「価格フィールドに無効な文字が含まれています」という警告が表示されます
そのような場合:
<span class="price">123</span> <span class="currency">руб.</span>
次に、「通貨はISO4217形式である必要があります」という警告が表示されます。
どうすればmicroformatsでそれを行うことができますか?これらすべての警告について心配する必要がありますか?
回答:
回答№1は0まず第一に、あなたはすることができません <span itemprop="currency" content="RUB">руб.</span>
microdataで。ザ・ content
属性はメタ要素でのみ有効です。だからあなたはすることができます <meta itemprop="currency" content="RUB">руб.
。通常とは異なり <meta>
要素、これらはに表示される可能性があります <body>
ページのセクション。ただし、これに相当する直接的なマイクロフォーマットはありません。
しかし、あなたもすることができます <data itemprop="currency" value="RUB">руб.</data>
マイクロデータで同じことを達成するために、そしてそれは似ているようです <data class="currency" value="RUB">руб.</data>
microformatsでも同じ仕事をします-を参照してください http://microformats.org/#time-data -少なくとも原則として、それはまだかなり新しいので。
それができなかった場合、microformatsでこれを行う古い方法は <abbr class="currency" title="RUB">руб.</abbr>
しかし、これは恐ろしいセマンティクスであり、私はそれを強くお勧めしません。