2

私は microdata、特に schema.org タグの使用を実験しています。同じ場所のプロパティを持つ可能性のある複数のスポーツ イベントを記述しようとしています。

<!--Sports Events -->
<div itemscope itemtype="http://schema.org/SportsEvent">
    <span itemprop="name" style="font-weight:bold;">Event One</span><br />
    <meta itemprop="location" content="venue" itemscope itemtype="http://schema.org/Place" itemref="olympicpark" />
    <meta itemprop="startDate" content="2011-08-04T10:00">
    <meta itemprop="endDate" content="2011-08-04T13:45">        
</div>
<div itemscope itemtype="http://schema.org/SportsEvent">
    <span itemprop="name" style="font-weight:bold;">Event Two</span><br />
    <meta itemprop="location" content="venue" itemscope itemtype="http://schema.org/Place" itemref="olympicpark" />
    <meta itemprop="startDate" content="2011-08-04T10:00">
    <meta itemprop="endDate" content="2011-08-04T13:45">        
</div>
<!--End Events -->

<!--Places -->
<h3>Venues</h3>
<div id="olympicpark">  
    <a itemprop="url" href="http://www.london2012.com/olympic-park">Olympic Park</a>
    <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
        <span itemprop="streetAddress">Olympic Park</span>
        <span itemprop="addressLocality">Stratford</span>
        <span itemprop="addressRegion">London</span>
        <span itemprop="postalCode">E20 2ST</span>
    </div>
    <div itemprop="geo" itemscope itemtype="http://schema.org/GeoCoordinates">
        <meta itemprop="latitude" content="51.54615" />
        <meta itemprop="longitude" content="-0.01269" />
    </div>
    <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
        <span itemprop="ratingValue">4</span> stars - based on 
        <span itemprop="reviewCount">250</span> reviews
    </div>
</div>
<!-- End Places -->

各スポーツ イベントのプロパティ「場所」は、itemref プロパティを介して「オリンピック公園」の場所にリンクされます。これは正しいようで、Google リッチ スニペット ツールはエラーを報告しません。私の唯一の懸念は、リッチ スニペット データが、オリンピック公園を直接指しているのではなく、オリンピック公園を参照している別の項目を指している場所プロパティを示していることです。

これは以下で見ることができます:

Item 
Type: http://schema.org/sportsevent
name = Event Two 
location = Item( 2 ) 
startdate = 2011-08-04T10:00 
enddate = 2011-08-04T13:45 

Item 2 
Type: http://schema.org/place
Ref to item: Item( olympicpark ) 

私が見たいのは、各スポーツ イベント アイテムの "location = Item ( olympicpark )" をレポートする microdata です。場所を次のように変更すると、これを取得できます

<span itemprop="location" content="venue" itemscope itemtype="http://schema.org/Place" itemref="olympicpark">

ただし、これを行うと、開始日と終了日が使用されません。これは、span タグが閉じられないため理解できます。

私はこれを解決しようとしてぐるぐる回っていますが、可能であれば助けていただければ幸いです。これが紛らわしいと思われる場合はお詫び申し上げます。問題を説明するのが難しいと思います。

マイク

4

3 に答える 3

1

元の実装に問題はありません。私が自分のサイトで読んで経験したことから、各イベント内にネストされた複数の場所を明示的に作成することを避けるために、あなたのやり方でそれを行うことは正しいです.

Google リッチ スニペット ツールが表示する理由は、場所の種類を伝える必要があるためです。思い通りに動作した場合location = Item ( olympicpark )、どのタイプとして認識されたのか疑問に思うでしょうItem ( olympicpark)

于 2012-01-14T23:37:54.193 に答える
1

おそらく、olympicpark div で itemscope と itemtype を指定し、id の代わりに itemid を使用する必要があります。これを確認してください: schema.org でアイテムを関連付けるにはどうすればよいですか?

于 2013-03-28T11:14:07.603 に答える
0

私の唯一の懸念は、リッチ スニペット データが、オリンピック公園を直接指しているのではなく、オリンピック公園を参照している別の項目を指している場所プロパティを示していることです。

完全に正しいです。混乱しないでくださいitemprop="location" itemscope itemtype="http://schema.org/Place"。item2 のプロパティとして正しく表示される独自のプロパティを持つ埋め込み/ネストされたアイテムで作成します。

于 2013-05-23T10:10:08.887 に答える