web-dev-qa-db-ja.com

多くのオペレーターからのツアーを示すウェブサイトの構造化データ

多くの異なるツアーオペレーターからのツアーをリストするWebサイトがあります。各ツアーページには価格、場所、評価、レビューがあり、ツアーの日付がある場合とない場合があります(一部のツアーは毎日実行され、一部はオンデマンドで実行され、一部は特定の日付で実行されます)。

このための正しいschema.orgスキーマはないようです。 イベント または SaleEvent は適切な選択肢のようですが、StartDateは必須フィールドです。次に、 ProductService があり、これらが正しい選択かもしれません。

検索エンジン、ローカル検索(ツアーの場所による)、およびリッチスニペットによる最高のランキングのためにこれをどのようにマークアップするのが最善か疑問に思いますか?

2
johna

これを行う方法は次のとおりです。

Tour Guide Companyのhttps://schema.org/ProfessionalServiceのラッパーがあります。

ProfessionalServiceLocalBusinessの子であるため、関連するビジネスプロパティの詳細をすべて継承するか、単にmainEntityOfPageを使用してWebサイトのTour Companyページを参照できます。

次に、makesOfferアイテムプロパティを使用します。これに期待されるタイプは、https://schema.org/OfferにあるOfferです。

各オファーには、価格、場所、評価、レビューが含まれます。リストは次のとおりです。

  • 価格: itemtype priceOffer itemプロパティ。予期されるタイプは、プレーンtextまたはnumberのいずれかです。
  • 場所: itemtype availableAtOrFromOffer itemプロパティ。期待されるitemtypeはPlaceです。つまり、LocalBusinessなどの子、またはProfessionalService。*などの孫でも使用できます。
  • レビューと評価: itemtype reviewReview itemプロパティ。すぐに、reviewRatingReview itemプロパティがレビューに使用されます。 reviewRatingRating項目タイプです。レビューの照合には子aggregatedRatingを使用します。
  • 日付と柔軟性:availabilityStartsおよびavailabilityEndsは、このためにあなたをカバーします。これらは両方ともDateTimeを返します-これは時間の柔軟性が出てくるところです。DateTimeには多くのプロパティが含まれています、includeavailabilityStartsおよびavailabilityEnds-DemandまたはOfferのいずれかです。 **

その他の注意事項:

  • https://schema.org/AggregateOfferOfferの子であり、OffermakesOffer itemプロパティのProfessionalServiceの期待されるitemtypeを置き換えるために使用できます。これは、異なるバージョンのツアー(プレミアムパッケージなど)がある場合、または単一の会社からのすべてのツアーを含むリストビューページがある場合に役立ちます。

また、場所だけにAggregatedOfferを付けることでこれを逆にすることができ、複数のツアー会社が同じ場所で同じ日付に働いている場合、ProfessionalServicesとそのOffersをすべてリストします。 。

一般的なヒントとして、expected typeschema.org列に注意を払い、問題に対処する最善の方法を見つけてください。

LocalBusiness + Offerで使用される子は、非常に一般的なデータ設計パターンであり、おそらく実用的なリッチスニペット設計で最も使用されるものの1つです。

additionalTypeを使用して、2つ以上のスキーマアイテムタイプを結合することもできます。

*開始テーマに注意してください?良い。これを使用して、再帰スキーマを作成できます。つまり、オファー内にオファーを作成できます。予想されるタイプに注意して、upの階層に戻り、ジャムが発生した場合に適切な子アイテムタイプを見つけることができるかどうかを確認します。 **​​これは再帰スキーマを作成することもできるため、オファー内でオファーを提供できることに注意してください。

1
inkovic