Product
商品ページにマークアップを追加すると、Google 画像検索など、Google 検索のリッチリザルトで詳細な商品情報を表示できるようになります。ユーザーは、価格、在庫状況、レビューの評価を検索結果で直接確認できます。
マークアップを使用して商品のリッチリザルトを表示できるようにすることで、購入する商品アイテムを Google 検索で探している潜在顧客や、自社の商品が写った画像を検索している潜在顧客に対してアピールできます。ユーザーの関心と一致した最新の商品アイテムとして見つけてもらうために、商品情報は正確かつ最新の状態に保ちましょう。
このページでは、Google 検索でリッチリザルトが表示されるように商品情報をマークアップする方法について説明します。Product
マークアップを使用すると、Google 画像検索で商品にバッジを付けて表示することもできるため、より多くのユーザーにコンテンツをクリックしてもらえる可能性が高まります。

通常、このマークアップは次の 2 種類のページで使用します。
- 単一の商品を説明する商品ページ
- 単一の商品がリストされているショッピング アグリゲータ ページ(その商品を提供している複数の販売者に関する情報も表示されているページ)
コンテンツのマークアップ方法によっては、商品で次の拡張機能を利用できる場合もあります。
サービスの強化 | |
---|---|
配送情報: ユーザーの所在地と配送元の配送ポリシーに基づき、ユーザーが配送料と推定配送時間を確認できます。配送情報は、特定の商品については、検索結果の [概要] タブと [店舗] タブに表示されます。この拡張機能は、モバイル デバイスで英語(アメリカ)でのみ利用できます。
この拡張機能を利用するには、 |
![]() ![]() |
値下げ: 商品の最低価格を知らせるのに役立ちます。 過去の平均価格設定に基づいて、値下げ額が自動的に計算されます。値下げは、米国内のパソコンとモバイルのユーザーを対象として、英語で表示されます。
値下げが表示されるようにするには、 |
![]() ![]() |
構造化データを追加する方法
構造化データは、ページに関する情報を提供し、ページ コンテンツを分類するための標準化されたデータ形式です。構造化データを初めて使用する場合は、構造化データの仕組みについてをご覧ください。
構造化データの作成、テスト、リリースの概要は次のとおりです。ウェブページに構造化データを追加するための手順ガイドについては、構造化データの Codelab をご覧ください。
- 必須プロパティを追加します。使用している形式に基づいて、ページ上の構造化データを挿入する場所をご確認ください。
- ガイドラインを遵守します。
- リッチリザルト テストでコードを検証します。
- 構造化データが含まれているページをいくつかデプロイし、URL 検査ツールを使用して、ページが Google にどのように認識されるかをテストします。Google がページにアクセスでき、robots.txt ファイル、
noindex
タグ、またはログイン要件によってページがブロックされていないことを確認します。ページが正常に表示される場合は、Google に URL の再クロールを依頼できます。 - 今後の変更について Google への情報提供を続けるには、サイトマップを送信することをおすすめします。これは、Search Console Sitemap API で自動化できます。
実際に試す
単一商品ページ
単一商品ページの例を次に示します。
JSON-LD
<html> <head> <title>Executive Anvil</title> <script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "name": "Executive Anvil", "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ], "description": "Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height.", "sku": "0446310786", "mpn": "925872", "brand": { "@type": "Brand", "name": "ACME" }, "review": { "@type": "Review", "reviewRating": { "@type": "Rating", "ratingValue": "4", "bestRating": "5" }, "author": { "@type": "Person", "name": "Fred Benson" } }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.4", "reviewCount": "89" }, "offers": { "@type": "Offer", "url": "https://example.com/anvil", "priceCurrency": "USD", "price": "119.99", "priceValidUntil": "2020-11-20", "itemCondition": "https://schema.org/UsedCondition", "availability": "https://schema.org/InStock" } } </script> </head> <body> </body> </html>
RDFa
<html> <head> <title>Executive Anvil</title> </head> <body> <div typeof="schema:Product"> <div rel="schema:review"> <div typeof="schema:Review"> <div rel="schema:reviewRating"> <div typeof="schema:Rating"> <div property="schema:ratingValue" content="4"></div> <div property="schema:bestRating" content="5"></div> </div> </div> <div rel="schema:author"> <div typeof="schema:Person"> <div property="schema:name" content="Fred Benson"></div> </div> </div> </div> </div> <div rel="schema:image" resource="https://example.com/photos/4x3/photo.jpg"></div> <div property="schema:mpn" content="925872"></div> <div property="schema:name" content="Executive Anvil"></div> <div property="schema:description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height."></div> <div rel="schema:image" resource="https://example.com/photos/1x1/photo.jpg"></div> <div rel="schema:brand"> <div typeof="schema:Brand"> <div property="schema:name" content="ACME"></div> </div> </div> <div rel="schema:aggregateRating"> <div typeof="schema:AggregateRating"> <div property="schema:reviewCount" content="89"></div> <div property="schema:ratingValue" content="4.4"></div> </div> </div> <div rel="schema:offers"> <div typeof="schema:Offer"> <div property="schema:price" content="119.99"></div> <div property="schema:availability" content="https://schema.org/InStock"></div> <div property="schema:priceCurrency" content="USD"></div> <div property="schema:priceValidUntil" datatype="xsd:date" content="2020-11-20"></div> <div rel="schema:url" resource="https://example.com/anvil"></div> <div property="schema:itemCondition" content="https://schema.org/UsedCondition"></div> </div> </div> <div rel="schema:image" resource="https://example.com/photos/16x9/photo.jpg"></div> <div property="schema:sku" content="0446310786"></div> </div> </body> </html>
microdata
<html> <head> <title>Executive Anvil</title> </head> <body> <div> <div itemtype="https://schema.org/Product" itemscope> <meta itemprop="mpn" content="925872" /> <meta itemprop="name" content="Executive Anvil" /> <link itemprop="image" href="https://example.com/photos/16x9/photo.jpg" /> <link itemprop="image" href="https://example.com/photos/4x3/photo.jpg" /> <link itemprop="image" href="https://example.com/photos/1x1/photo.jpg" /> <meta itemprop="description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height." /> <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope> <link itemprop="url" href="https://example.com/anvil" /> <meta itemprop="availability" content="https://schema.org/InStock" /> <meta itemprop="priceCurrency" content="USD" /> <meta itemprop="itemCondition" content="https://schema.org/UsedCondition" /> <meta itemprop="price" content="119.99" /> <meta itemprop="priceValidUntil" content="2020-11-20" /> </div> <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope> <meta itemprop="reviewCount" content="89" /> <meta itemprop="ratingValue" content="4.4" /> </div> <div itemprop="review" itemtype="https://schema.org/Review" itemscope> <div itemprop="author" itemtype="https://schema.org/Person" itemscope> <meta itemprop="name" content="Fred Benson" /> </div> <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope> <meta itemprop="ratingValue" content="4" /> <meta itemprop="bestRating" content="5" /> </div> </div> <meta itemprop="sku" content="0446310786" /> <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope> <meta itemprop="name" content="ACME" /> </div> </div> </div> </body> </html>
単一商品と配送情報
配送情報を示した、単一商品ページの例を次に示します。この例では、郵便番号が 98100~98199 の範囲であるユーザーの配送料が $3.49 になっています。その他の例については、配送情報のベスト プラクティスをご覧ください。
JSON-LD
<html> <head> <title>Nice trinket</title> <script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "sku": "trinket-12345", "gtin14": "12345678901234", "image": [ "https://example.com/photos/16x9/trinket.jpg", "https://example.com/photos/4x3/trinket.jpg", "https://example.com/photos/1x1/trinket.jpg" ], "name": "Nice trinket", "description": "Trinket with clean lines", "brand": { "@type": "Brand", "name": "MyBrand" }, "offers": { "@type": "Offer", "url": "http://www.example.com/trinket_offer", "itemCondition": "https://schema.org/NewCondition", "availability": "https://schema.org/InStock", "price": "39.99", "priceCurrency": "USD", "priceValidUntil": "2020-11-20", "shippingDetails": { "@type": "OfferShippingDetails", "shippingRate": { "@type": "MonetaryAmount", "value": "3.49", "currency": "USD" }, "shippingDestination": { "@type": "DefinedRegion", "addressCountry": "US", "postalCodeRange": { "postalCodeBegin": "98100", "postalCodeEnd": "98199" } }, "deliveryTime": { "@type": "ShippingDeliveryTime", "handlingTime": { "@type": "QuantitativeValue", "minValue": "0", "maxValue": "1" }, "transitTime": { "@type": "QuantitativeValue", "minValue": "1", "maxValue": "5" }, "cutOffTime": "19:30-08:00", "businessDays": { "@type": "OpeningHoursSpecification", "dayOfWeek": [ "https://schema.org/Monday", "https://schema.org/Tuesday", "https://schema.org/Wednesday", "https://schema.org/Thursday" ] } } } }, "review": { "@type": "Review", "reviewRating": { "@type": "Rating", "ratingValue": "4", "bestRating": "5" }, "author": { "@type": "Person", "name": "Fred Benson" } }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.4", "reviewCount": "89" } } </script> </head> <body> </body> </html>
RDFa
<html> <head> <title>Nice trinket</title> </head> <body> <div typeof="schema:Product"> <div property="schema:sku" content="trinket-12345"></div> <div property="schema:gtin14" content="12345678901234"></div> <div property="schema:name" content="Nice trinket"></div> <div rel="schema:image" resource="https://example.com/photos/16x9/trinket.jpg"></div> <div rel="schema:image" resource="https://example.com/photos/4x3/trinket.jpg"></div> <div rel="schema:image" resource="https://example.com/photos/1x1/trinket.jpg"></div> <div property="schema:description" content="Trinket with clean lines"></div> <div rel="schema:brand"> <div typeof="schema:Brand"> <div property="schema:name" content="MyBrand"></div> </div> </div> <div rel="schema:offers"> <div typeof="schema:Offer"> <div rel="schema:url" resource="https://example.com/trinket_offer"></div> <div property="schema:itemCondition" content="https://schema.org/NewCondition"></div> <div property="schema:availability" content="https://schema.org/InStock"></div> <div property="schema:price" content="39.99"></div> <div property="schema:priceCurrency" content="USD"></div> <div property="schema:priceValidUntil" datatype="xsd:date" content="2020-11-20"></div> <div rel="schema:shippingDetails"> <div typeof="schema:OfferShippingDetails"> <div rel="schema:shippingRate"> <div typeof="schema:MonetaryAmount"> <div property="schema:value" content="3.49"></div> <div property="schema:currency" content="USD"></div> </div> </div> <div rel="schema:shippingDestination"> <div typeof="schema:DefinedRegion"> <div property="schema:addressCountry" content="US"></div> <div rel="schema:postalCodeRange"> <div typeof="schema:PostalCodeRangeSpecification"> <div property="schema:postalCodeBegin" content="98100"></div> <div property="schema:postalCodeEnd" content="98199"></div> </div> </div> </div> </div> <div rel="schema:deliveryTime"> <div typeof="schema:ShippingDeliveryTime"> <div rel="schema:handlingTime"> <div typeof="schema:QuantitativeValue"> <div property="schema:minValue" content="0"></div> <div property="schema:maxValue" content="1"></div> </div> </div> <div rel="schema:transitTime"> <div typeof="schema:QuantitativeValue"> <div property="schema:minValue" content="1"></div> <div property="schema:maxValue" content="5"></div> </div> </div> <div property="schema:cutOffTime" content="19:30-08:00"></div> <div rel="schema:businessDays"> <div typeof="schema:OpeningHoursSpecification"> <div property="schema:dayOfWeek" content="https://schema.org/Monday"></div> <div property="schema:dayOfWeek" content="https://schema.org/Tuesday"></div> <div property="schema:dayOfWeek" content="https://schema.org/Wednesday"></div> <div property="schema:dayOfWeek" content="https://schema.org/Thursday"></div> </div> </div> </div> </div> </div> </div> </div> </div> <div rel="schema:review"> <div typeof="schema:Review"> <div rel="schema:reviewRating"> <div typeof="schema:Rating"> <div property="schema:ratingValue" content="4"></div> <div property="schema:bestRating" content="5"></div> </div> </div> <div rel="schema:author"> <div typeof="schema:Person"> <div property="schema:name" content="Fred Benson"></div> </div> </div> </div> </div> <div rel="schema:aggregateRating"> <div typeof="schema:AggregateRating"> <div property="schema:reviewCount" content="89"></div> <div property="schema:ratingValue" content="4.4"></div> </div> </div> </div> </body> </html>
microdata
<html> <head> <title>Nice trinket</title> </head> <body> <div> <div itemtype="https://schema.org/Product" itemscope> <meta itemprop="sku" content="trinket-12345" /> <meta itemprop="gtin14" content="12345678901234" /> <meta itemprop="name" content="Nice trinket" /> <link itemprop="image" href="https://example.com/photos/16x9/trinket.jpg" /> <link itemprop="image" href="https://example.com/photos/4x3/trinket.jpg" /> <link itemprop="image" href="https://example.com/photos/1x1/trinket.jpg" /> <meta itemprop="description" content="Trinket with clean lines" /> <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope> <meta itemprop="name" content="MyBrand" /> </div> <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope> <link itemprop="url" href="http://www.example.com/trinket_offer" /> <meta itemprop="itemCondition" content="https://schema.org/NewCondition" /> <meta itemprop="availability" content="https://schema.org/InStock" /> <meta itemprop="price" content="39.99" /> <meta itemprop="priceCurrency" content="USD" /> <meta itemprop="priceValidUntil" content="2020-11-20" /> <div itemprop="shippingDetails" itemtype="https://schema.org/OfferShippingDetails" itemscope> <div itemprop="shippingRate" itemtype="https://schema.org/MonetaryAmount" itemscope> <meta itemprop="value" content="3.49" /> <meta itemprop="currency" content="USD" /> </div> <div itemprop="shippingDestination" itemtype="https://schema.org/DefinedRegion" itemscope> <meta itemprop="addressCountry" content="US" /> <div itemprop="postalCodeRange" itemtype="https://schema.org/PostalCodeRangeSpecification" itemscope> <meta itemprop="postalCodeBegin" content="98100" /> <meta itemprop="postalCodeEnd" content="98199" /> </div> </div> <div itemprop="deliveryTime" itemtype="https://schema.org/ShippingDeliveryTime" itemscope> <div itemprop="handlingTime" itemtype="https://schema.org/QuantitativeValue" itemscope> <meta itemprop="minValue" content="0" /> <meta itemprop="maxValue" content="1" /> </div> <div itemprop="transitTime" itemtype="https://schema.org/QuantitativeValue" itemscope> <meta itemprop="minValue" content="1" /> <meta itemprop="maxValue" content="5" /> </div> <meta itemprop="cutOffTime" content="19:30-08:00" /> <div itemprop="businessDays" itemtype="https://schema.org/OpeningHoursSpecification" itemscope> <meta itemprop="dayOfWeek" content="https://schema.org/Monday" /> <meta itemprop="dayOfWeek" content="https://schema.org/Tuesday" /> <meta itemprop="dayOfWeek" content="https://schema.org/Wednesday" /> <meta itemprop="dayOfWeek" content="https://schema.org/Thursday" /> </div> </div> </div> </div> <div itemprop="review" itemtype="https://schema.org/Review" itemscope> <div itemprop="author" itemtype="https://schema.org/Person" itemscope> <meta itemprop="name" content="Fred Benson" /> </div> <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope> <meta itemprop="ratingValue" content="4" /> <meta itemprop="bestRating" content="5" /> </div> </div> <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope> <meta itemprop="reviewCount" content="89" /> <meta itemprop="ratingValue" content="4.4" /> </div> </div> </div> </body> </html>
ショッピング アグリゲータ ページ
ショッピング アグリゲータ ページの例を次に示します。
JSON-LD
<html> <head> <title>Executive Anvil</title> <script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "name": "Executive Anvil", "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ], "description": "Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height.", "sku": "0446310786", "mpn": "925872", "brand": { "@type": "Brand", "name": "ACME" }, "review": { "@type": "Review", "reviewRating": { "@type": "Rating", "ratingValue": "4", "bestRating": "5" }, "author": { "@type": "Person", "name": "Fred Benson" } }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.4", "reviewCount": "89" }, "offers": { "@type": "AggregateOffer", "offerCount": "5", "lowPrice": "119.99", "highPrice": "199.99", "priceCurrency": "USD" } } </script> </head> <body> </body> </html>
RDFa
<html> <head> <title>Executive Anvil</title> </head> <body> <div typeof="schema:Product"> <div rel="schema:review"> <div typeof="schema:Review"> <div rel="schema:reviewRating"> <div typeof="schema:Rating"> <div property="schema:ratingValue" content="4"></div> <div property="schema:bestRating" content="5"></div> </div> </div> <div rel="schema:author"> <div typeof="schema:Person"> <div property="schema:name" content="Fred Benson"></div> </div> </div> </div> </div> <div rel="schema:aggregateRating"> <div typeof="schema:AggregateRating"> <div property="schema:reviewCount" content="89"></div> <div property="schema:ratingValue" content="4.4"></div> </div> </div> <div rel="schema:image" resource="https://example.com/photos/4x3/photo.jpg"></div> <div property="schema:mpn" content="925872"></div> <div property="schema:name" content="Executive Anvil"></div> <div property="schema:description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height."></div> <div rel="schema:image" resource="https://example.com/photos/1x1/photo.jpg"> </div> <div rel="schema:brand"> <div typeof="schema:Brand"> <div property="schema:name" content="ACME"></div> </div> </div> <div rel="schema:offers"> <div typeof="schema:AggregateOffer"> <div property="schema:offerCount" content="5"></div> <div property="schema:lowPrice" content="119.99"></div> <div property="schema:highPrice" content="199.99"></div> <div property="schema:priceCurrency" content="USD"></div> <div rel="schema:url" resource="https://example.com/anvil"></div> </div> </div> <div rel="schema:image" resource="https://example.com/photos/16x9/photo.jpg"></div> <div property="schema:sku" content="0446310786"></div> </div> </body> </html>
microdata
<html> <head> <title>Executive Anvil</title> </head> <body> <div> <div itemtype="https://schema.org/Product" itemscope> <meta itemprop="mpn" content="925872" /> <meta itemprop="name" content="Executive Anvil" /> <link itemprop="image" href="https://example.com/photos/16x9/photo.jpg" /> <link itemprop="image" href="https://example.com/photos/4x3/photo.jpg" /> <link itemprop="image" href="https://example.com/photos/1x1/photo.jpg" /> <meta itemprop="description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height." /> <div itemprop="offers" itemtype="https://schema.org/AggregateOffer" itemscope> <meta itemprop="lowPrice" content="119.99" /> <meta itemprop="highPrice" content="199.99" /> <meta itemprop="offerCount" content="6" /> <meta itemprop="priceCurrency" content="USD" /> </div> <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope> <meta itemprop="reviewCount" content="89" /> <meta itemprop="ratingValue" content="4.4" /> </div> <div itemprop="review" itemtype="https://schema.org/Review" itemscope> <div itemprop="author" itemtype="https://schema.org/Person" itemscope> <meta itemprop="name" content="Fred Benson" /> </div> <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope> <meta itemprop="ratingValue" content="4" /> <meta itemprop="bestRating" content="5" /> </div> </div> <meta itemprop="sku" content="0446310786" /> <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope> <meta itemprop="name" content="ACME" /> </div> </div> </div> </body> </html>
ガイドライン
商品のリッチリザルトでは、価格、在庫状況、レビューの評価など、特定の商品に関する情報がユーザーに提供されます。Product
マークアップを使用してこのリッチリザルトが表示されるようにするには、以下のガイドラインを遵守する必要があります。
技術に関するガイドライン
- マークアップは、商品のカテゴリやリストではなく、特定の商品に使用します。たとえば、「当店の靴」は特定の商品ではありません。現在、商品のリッチリザルトは、単一の商品に焦点を当てたページのみをサポートしています。これには、商品バリエーションごとに URL が異なる商品バリエーションも含まれます。複数の商品やある商品カテゴリを一覧表示するページではなく、商品ページにマークアップを追加することをおすすめします。
- 商品のレビューを追加する場合、その投稿者の名前は
Person
またはTeam
の名前として有効なものでなければなりません。非推奨: ブラック フライデーは 50% オフ
推奨: 「山田太郎」、「CNET クチコミ投稿者」
Google 画像検索に商品情報を含めるには、次のようにプロパティを追加する必要があります。
- リッチ画像ビューアに商品情報を表示するには:
name
、image
、price
、priceCurrency
プロパティを追加します。 - 「関連アイテム」機能に商品情報を表示するには:
name
、image
、price
、priceCurrency
、availability
のプロパティを追加します。
コンテンツ ガイドライン
- 人に深刻、直接的、または長期的な危害をもたらす可能性があり、広く禁止または規制されている商品やサービス、情報を宣伝するコンテンツは認められません。これには、銃器や武器、危険ドラッグ、タバコ関連商品(電子タバコを含む)、ギャンブル関連商品に関連するコンテンツが含まれます。
配送情報のベスト プラクティス
送料無料を指定する
特定の商品を送料無料にするには、商品ページにある対象商品の配送エリアに含まれる全地域について、shippingRate
を 0 に設定します。たとえばニューヨーク州への配送を無料にする場合は、配送エリアにニューヨークが含まれている商品について、次のコードを実装します。
"shippingDetails": { "@type": "OfferShippingDetails", "shippingRate": { "@type": "MonetaryAmount", "value": "0", "currency": "USD" }, "shippingDestination": [{ "@type": "DefinedRegion", "addressCountry": "US", "addressRegion": ["NY"] }] }
配送対象外とする地域を指定する
商品の配送対象から除外する地域を設定するには、doesNotShip
プロパティを追加します。このプロパティは他の配送設定よりも優先されます。たとえば、商品を米国に配送する場合に、アラスカまたはハワイを配送先から除外するには、それらの州に配送しない商品について、次のコードを実装します。
"shippingDetails": { "@type": "OfferShippingDetails", "doesNotShip": true, "shippingDestination": { "@type": "DefinedRegion", "addressCountry": "US", "addressRegion": ["AK", "HI"] } }
同じ配送地域に対して複数の配送サービスを指定する
販売者は商品の配送について、ユーザーに複数の選択肢(翌日配達、翌々日配達、標準など)を提示する場合があります。それぞれを指定するには、shippingRate
プロパティと deliveryTime
プロパティをさまざまに組み合わせた、複数の shippingDetails
プロパティを使用します。
同じ配送先に対して複数の shippingRate
プロパティを指定した場合、Google では最低料金の配送オプションに基づいてデータが表示されます。
構造化データタイプの定義
コンテンツがリッチリザルトとして表示されるようにするには、必須プロパティを含める必要があります。また、推奨プロパティを使用することでコンテンツに関する詳細情報を追加でき、ユーザー エクスペリエンスの向上につながります。
Product
Product
の定義の全文は schema.org/Product で確認できます。コンテンツで商品情報のマークアップを設定するには、schema.org の Product
タイプの以下のプロパティを使用します。
必須プロパティ | |
---|---|
name |
商品名。 |
review 、aggregateRating 、offers のいずれか |
次のいずれかのプロパティを含める必要があります。 |
推奨プロパティ | |
---|---|
aggregateRating |
商品のネストされた |
brand |
商品のブランド。 |
description |
商品の説明。 |
image |
商品の写真の URL。商品がはっきりわかる写真(背景が白の写真など)を指定することをおすすめします。 画像に関するその他のガイドライン:
次に例を示します。 "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ] |
offers
|
ネストされた
値下げが表示されるようにするには、 |
review
|
商品のネストされた |
gtin | gtin8 | gtin13 | gtin14 | mpn | isbn |
該当するすべてのグローバル識別子を設定します。グローバル識別子については、schema.org/Product をご覧ください。 |
sku |
商品に関する販売者固有の識別子。 |
Offer
Offer
の定義の全文は schema.org/Offer で確認できます。商品内で販売情報をマークアップする場合は、schema.org の Offer
タイプの以下のプロパティを使用します。
必須プロパティ | |
---|---|
price |
商品の価格。schema.org の使用ガイドラインに沿って指定してください。
"offers": { "@type": "Offer", "price": "39.99" } 商品が無料であることを指定する方法の例を次に示します。 "offers": { "@type": "Offer", "price": "0" } |
推奨プロパティ | |
---|---|
availability |
商品の在庫状況のオプション。以下のいずれかを選択し、マークアップ内にその URL リンクを指定します。URL 全体を指定しなくても、短縮名(
|
itemOffered |
販売する商品アイテム。通常はここに商品をネストしますが、他の商品アイテムタイプや、テキストを含めることもできます。 |
priceCurrency |
商品価格の記述に使用する通貨を 3 文字の ISO 4217 形式で指定します。 |
priceValidUntil |
その日以降は価格が使用できなくなる日付(ISO 8601 日付形式)(該当する場合)。 |
shippingDetails |
|
url |
|
OfferShippingDetails
OfferShippingDetails
を使用すると、ユーザーの所在地と配送元の配送ポリシーに基づき、ユーザーが配送料と推定配送時間を確認できます。
商品に詳細な配送情報が表示されるようにするには、Product
構造化データに加えて、商品ページに次の OfferShippingDetails
プロパティを追加します。OfferShippingDetails
は必須ではありませんが、詳細な配送情報が表示されるようにするには、次のプロパティを追加する必要があります。
OfferShippingDetails
の定義の全文は schema.org/OfferShippingDetails で確認できます。
必須プロパティ | |
---|---|
shippingDestination |
配送先を示します。 |
shippingDestination.addressCountry |
ISO 3166-1 形式の 2 桁の国コード。 |
推奨プロパティ | |||||||
---|---|---|---|---|---|---|---|
deliveryTime |
注文を受けてから商品が購入者に届くまでに生じる遅延時間の合計。次のプロパティをネストします。 |
||||||
deliveryTime.businessDays |
注文処理が行われる曜日。 |
||||||
deliveryTime.businessDays.dayOfWeek |
注文が処理される曜日の名前。営業日以外に受領した注文については、翌営業日に処理が開始されます。その間の営業日以外の日も、発送準備時間に追加されます。 次の列挙型を使用します。 |
||||||
deliveryTime.cutOffTime |
その日の新しい注文の処理を終了する時刻。ISO 8601 形式で指定します。発送準備時間に 1 日が追加されます。 |
||||||
deliveryTime.handlingTime |
配送方法がオンサイト受け取りの場合に、注文を受けてから、商品が倉庫を出るか、または受け渡し準備ができるまでの間に通常発生する遅延。 |
||||||
deliveryTime.handlingTime.minValue |
配送方法がオンサイト受け取りの場合に、注文を受けてから商品が倉庫を出るか、または受け渡しの準備ができるまでの間に発生する最短日数。 値は負でない整数にする必要があります。 |
||||||
deliveryTime.handlingTime.maxValue |
配送方法がオンサイト受け取りの場合に、注文を受けてから商品が倉庫を出るか、または受け渡しの準備ができるまでの間に発生する最大日数。 値は負でない整数にする必要があります。 |
||||||
deliveryTime.transitTime |
注文された商品が発送されてから購入者に届くまでに通常発生する遅延。 |
||||||
deliveryTime.transitTime.maxValue |
商品が発送されてから購入者に届くまでの最大日数。 値は負でない整数にする必要があります。 |
||||||
deliveryTime.transitTime.minValue |
商品が発送されてから購入者に届くまでの最短日数。 値は負でない整数にする必要があります。 |
||||||
doesNotShip |
特定の |
||||||
shippingDestination.addressRegion または郵便番号 |
地域または郵便番号の情報(該当する場合)。地域情報と郵便番号の両方を入力しないでください。
郵便番号を指定する場合は、次のいずれかのプロパティにする必要があります。
|
||||||
shippingRate |
指定した配送先への配送料の情報。
|
||||||
shippingRate.currency |
配送料の通貨。3 文字の ISO 4217 形式で示します。
通貨は |
||||||
shippingRate.value |
送料無料を指定するには、値を 0 に設定します。 |
次のプロパティはベータ版であり、必須ではありません。現在、商品のリッチリザルトに配送料の詳細として表示されません。ただし、この情報を指定することで、Google はサイト上の商品と関連配送ページとの関係を理解しやすくなります。 Google は、この情報を使用して他のリッチリザルトを作成する場合があります。
ベータ版: 推奨プロパティ | |
---|---|
shippingSettingsLink |
会社の配送に関するポリシーの概要が記載されているサイト上のページの URL。このページには、この商品に適用されるポリシーを 1 つ以上含める必要があります。 |
Google で配送を設定する別の方法
販売店の配送に関するポリシーは複雑で、頻繁に変更されることもあります。配送情報の指定や最新情報への更新にマークアップを使うのは大変と思われる場合は、Google Merchant Center で配送料を設定することをご検討ください。
AggregateOffer
AggregateOffer
の定義の全文は schema.org/AggregateOffer で確認できます。AggregateOffer
は Offer
の一種で、その他の販売情報の集約を表します。商品内で販売情報の集約をマークアップする場合は、schema.org の AggregateOffer
タイプの以下のプロパティを使用します。
必須プロパティ | |
---|---|
lowPrice |
すべての販売情報の中での最低価格。浮動小数点数で指定します。 |
priceCurrency |
商品価格の記述に使用する通貨を 3 文字の ISO 4217 形式で指定します。 |
推奨プロパティ | |
---|---|
highPrice |
すべての販売情報の中での最高価格。浮動小数点数で指定します。 |
offerCount |
商品の販売情報の数。 |
Search Console でリッチリザルトを監視する
Search Console は、Google 検索におけるページのパフォーマンスを監視できるツールです。Search Console に登録していなくても Google 検索結果に表示されますが、登録することにより、Google がサイトをどのように認識しているかを把握して改善できるようになります。次の場合は Search Console を確認することをおすすめします。
構造化データを初めてデプロイした後
ページがインデックスに登録されたら、関連するリッチリザルトのステータス レポートを使用して、問題がないかどうかを確認します。有効なページが増え、エラーや警告が増えていない状態が理想的です。構造化データに問題が見つかった場合の手順は次のとおりです。
- エラーを修正します。
- 公開 URL の検査を行い、問題が解決したかどうかを確認します。
- ステータス レポートを使用して検証をリクエストします。
新しいテンプレートをリリースした後やコードを更新した後
ウェブサイトに大幅な変更を加えた場合は、構造化データのエラーや警告が増加しないかどうか監視します。- エラーが増加した場合は、新しく公開したテンプレートが正常に機能していないか、既存のテンプレートの動作に問題が生じていることが原因と考えられます。
- 有効な項目が減少している(エラーの増加と一致しない)場合は、ページに構造化データが埋め込まれていない可能性があります。URL 検査ツールを使用して問題の原因を特定します。
トラフィックを定期的に分析する場合
パフォーマンス レポートを使用して Google 検索のトラフィックを分析します。このデータから、検索でページがリッチリザルトとして表示される頻度、ユーザーがページをクリックする頻度、検索結果におけるページの平均掲載順位がわかります。Search Console API を使用して、このデータを自動的に取得することもできます。トラブルシューティング
構造化データの実装またはデバッグで問題が発生した場合は、以下のリソースが参考になります。
- 構造化データにエラーがある可能性があります。構造化データエラーの一覧を確認してください。
- 構造化データへの手動による対策をページに対して実施すると、ページ上の構造化データが無視されるようになります(ただし、Google 検索結果にはページは引き続き表示されます)。構造化データの問題を修正するには、手動による対策レポートを使用します。
- ガイドラインを再度確認し、コンテンツがガイドラインを遵守していないことを確認します。
- リッチリザルトが見つからない場合またはリッチリザルトの合計数が不足している場合のトラブルシューティングをご覧ください。
- クロールとインデックス登録に関する一般的な質問については、Google 検索のクロールとインデックス登録に関するよくある質問をご覧ください。
- 質問は Google 検索セントラル オフィスアワーに投稿してください。
- Google 検索セントラル フォーラムでもご質問をお受けしています。