ローカル ビジネス

Google 検索や Google マップでビジネスを検索すると、クエリに一致するビジネスの詳細が記載されたナレッジグラフ カードが表示されることがあります。特定のタイプのビジネス(たとえばレストラン)を検索すると、ビジネス リスティング提供者がホストするリスティングがカルーセルとして表示されることもあります。

以下に示す例は、構造化データ テストツールを使用して試すことができます。

ローカル ビジネス リスティング

以下に、「スペイン料理のレストラン」のようなカテゴリ検索、または「Cascal」(ステーキハウスの名前)のようなエンティティ検索の例を示します。

位置情報アクション

以下に、「近くの理髪店」、「5 km 圏内の美容室」のような位置情報ベースのクエリの例を示します。

営業時間

ここでは、さまざまなタイプの営業時間をマークアップする方法を具体的に説明します。

通常の営業時間

validFrom および validThrough プロパティを省略することで、年間を通して有効な通常の営業時間を指定できます。次の例は、平日は午前 9 時から午後 9 時まで、週末は午前 10 時から午後 11 時まで営業する場合です。

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": [
      "Monday",
      "Tuesday",
      "Wednesday",
      "Thursday",
      "Friday"
    ],
    "opens": "09:00",
    "closes": "21:00"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": [
      "Saturday",
      "Sunday"
    ],
    "opens": "10:00",
    "closes": "23:00"
  }
]
深夜の営業時間

営業時間が深夜 0 時をまたぐ場合は、1 つの OpeningHoursSpecification プロパティで開始時間と終了時間を定義します。次の例は、土曜日の午後 6 時から日曜日の午前 3 時まで営業する場合です。

"openingHoursSpecification": {
  "@type": "OpeningHoursSpecification",
  "dayOfWeek": "Saturday",
  "opens": "18:00",
  "closes": "03:00"
}
終日営業

24 時間営業の場合は、open プロパティを「00:00」に設定し、closes プロパティを「23:59」に設定します。終日休業する場合は、opens および closes プロパティを両方とも「00:00」に設定します。土曜日に終日営業し、日曜日に終日休業する例を以下に示します。

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Saturday",
    "opens": "00:00",
    "closes": "23:59"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Sunday",
    "opens": "00:00",
    "closes": "00:00"
  }
]
季節営業

季節営業を定義するには、validFrom および validThrough プロパティを使用します。次に、年末年始に休業する例を示します。

"openingHoursSpecification": {
  "@type": "OpeningHoursSpecification",
  "opens": "00:00",
  "closes": "00:00",
  "validFrom": "2015-12-23",
  "validThrough": "2016-01-05"
}

複数の部門がある場合

ビジネスに複数の部門があり、部門ごとに営業時間や電話番号が異なる場合は、department プロパティを使用してそれぞれの部門の要素をマークアップできます。メインの店舗と異なるプロパティを、部門ごとに個別に定義してください。

マークアップ内の部門名は、次のガイドラインに沿って指定してください。

  • 店舗名と部門名を次の形式で指定します。 {store name} {department name}

    たとえば、「gMart」の薬局部門であれば「gMart Pharmacy」のようにします。

  • 部門名がブランドとして認知されている場合は、部門名を単独で使用します。たとえば、Best Buy を母体とする Geek Squad は、部門名として単独で指定します。

レストラン リスト

ユーザーがリストを検索するクエリ(たとえば「ニューヨークのおいしいレストラン」)を実行したときに、マークアップしておいたレストラン コンテンツをホスト固有のカルーセルとして検索結果に表示することができます。レストランのホスト固有リストを有効にするには、ItemList マークアップを使用して ItemList でレストラン リストのページを作成し、個々のレストラン ページをマークアップします。実装の詳細については、カルーセルに関するドキュメントをご覧ください。

注文と予約のシナリオ

ビジネス マークアップでは、複数の Action タイプを指定し、それぞれのアクションを他のパラメータで修飾できます。提供するコンテンツに応じて、アクションと修飾パラメータの組み合わせを複数使用してマークアップできます。

シナリオ
OrderAction
サポートされるパラメータ
  • potentialAction.@type
  • potentialAction.target.inLanguage
  • potentialAction.target.actionPlatform
ReserveAction
サポートされるパラメータ
  • potentialAction.@type
  • potentialAction.target.inLanguage
  • potentialAction.target.actionPlatform
  • potentialAction.result.provider

ここでは、それぞれのビジネスに応じてアクションを 1 つのみマークアップした例を示します。

料理の注文
{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "@id": "http://davescafe.example.com/",
  "name": "Dave's Cafe",
  "image": [
    "https://example.com/photos/1x1/photo.jpg",
    "https://example.com/photos/4x3/photo.jpg",
    "https://example.com/photos/16x9/photo.jpg"
   ],
  "address" :{
    "@type": "PostalAddress",
    "streetAddress": "123 William St",
    "addressLocality": "New York",
    "addressRegion": "NY",
    "postalCode": "10038",
    "addressCountry": "US"
  },
  "geo":{
    "@type": "GeoCoordinates",
    "latitude": 40.709312,
    "longitude": -74.007136
  },
  "telephone": "+19172423826",
  "potentialAction": {
    "@type": "OrderAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "https://www.example.com/daves-cafe-new-york",
      "inLanguage": "en-US",
      "actionPlatform": [
        "http://schema.org/DesktopWebPlatform",
        "http://schema.org/IOSPlatform",
        "http://schema.org/AndroidPlatform"
      ]
    },
    "deliveryMethod": [
      "http://purl.org/goodrelations/v1#DeliveryModePickUp",
      "http://purl.org/goodrelations/v1#DeliveryModeOwnFleet"
    ],
    "priceSpecification": {
      "@type": "DeliveryChargeSpecification",
      "appliesToDeliveryMethod": "http://purl.org/goodrelations/v1#DeliveryModeOwnFleet",
      "priceCurrency": "USD",
      "price": 0.0,
      "eligibleTransactionVolume": {
        "@type": "PriceSpecification",
        "priceCurrency": "USD",
        "price": 12.00
      }
    }
  }
}
レッスンの予約
{
  "@context": "https://schema.org",
  "@type": "HealthClub",
  "@id": "http://daveshouseofyoga.example.com/",
  "name": "Dave's House of Yoga",
  "image": [
    "https://example.com/photos/1x1/photo.jpg",
    "https://example.com/photos/4x3/photo.jpg",
    "https://example.com/photos/16x9/photo.jpg"
   ],
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "3986 Rivermark Pkwy",
    "addressLocality": "Santa Clara",
    "addressRegion": "CA",
    "postalCode": "95054",
    "addressCountry": "US"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 37.3952149,
    "longitude": -121.9474023
  },
  "telephone": "+14085551135",
  "potentialAction": {
    "@type": "ReserveAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "https://www.example.com/reserve?merchantId=20373",
      "inLanguage": "en-US",
      "actionPlatform": [
        "http://schema.org/DesktopWebPlatform",
        "http://schema.org/IOSPlatform",
        "http://schema.org/AndroidPlatform"
      ]
    },
    "result": {
      "@type": "Reservation",
      "name": "Book a class"
    }
  }
}
レストランの予約
{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "@id": "http://davescafe.example.com/",
  "name": "Dave's Cafe",
  "image": [
    "https://example.com/photos/1x1/photo.jpg",
    "https://example.com/photos/4x3/photo.jpg",
    "https://example.com/photos/16x9/photo.jpg"
   ],
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "123 William St",
    "addressLocality": "New York",
    "addressRegion": "NY",
    "postalCode": "10038",
    "addressCountry": "US"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 40.709312,
    "longitude": -74.007136
  },
  "telephone": "+19172423826",
  "potentialAction": {
    "@type": "ReserveAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "https://www.example.com/reserve?merchantId=20373",
      "inLanguage": "en-US",
      "actionPlatform": [
        "http://schema.org/DesktopWebPlatform",
        "http://schema.org/IOSPlatform",
        "http://schema.org/AndroidPlatform"
      ]
    },
    "result": {
      "@type": "FoodEstablishmentReservation",
      "name": "Reserve table"
    }
  }
}

アクションとパラメータの組み合わせは、他にもさまざまなパターンが考えられます。さらに複雑なビジネス アクションを作成する場合は、potentialAction.target.url または potentialAction.target.urlTemplate のどちらかに値を 1 つのみ指定してください。

以下に、OrderActionReserveAction のタイプを使用するシナリオをいくつか示します。

  • 1 つの OrderAction と 1 つの ReserveAction: 注文の配達と席の予約を受け付けるレストラン。
  • 提供者ごとに 1 つの OrderAction: 2 つの提供者からの注文の配達に対応するレストラン。
  • 1 つの ReserveAction:
    • 1 つの提供者がさまざまなレッスンを提供するヨガスタジオ。
    • 複数のスタイリストが、それぞれ独自のサービス メニューを提供するヘアサロン。

ガイドライン

ビジネスの Action マークアップは、以下のガイドラインに沿って行ってください。

  • potentialAction.target.url または potentialAction.target.urlTemplate のどちらかに 1 つの値のみを指定します。
  • 対象とするウェブページやアプリでは、ユーザーがオンラインでアクションを完結できるようにする必要があります。たとえば、レストランのメニューを表示するウェブページで、注文や予約のためにユーザーが電話をかけなければならないページは有効なアクション ページではありません。

構造化データタイプの定義

schema.org/LocalBusiness の定義一覧に基づいて、以下の表にローカル ビジネスとビジネス アクション タイプのプロパティと使用方法をまとめます。

コンテンツがリッチリザルトとして表示されるようにするには、必須プロパティが必要です。また、推奨プロパティを使用すると、コンテンツについてさらに詳しい情報を追加できるので、ユーザー エクスペリエンスの向上につながります。

LocalBusiness

LocalBusiness の定義の全文は schema.org/LocalBusiness でご確認いただけます。各ビジネス拠点を LocalBusiness タイプとして定義します。できる限り具体的な LocalBusiness サブタイプ(RestaurantDaySpaHealthClub など)を使用してください。

必須プロパティ
@id

URL

特定のビジネス拠点のグローバルに一意の ID を URL 形式で指定します。ID は、時間が経過しても変化しないものにする必要があります。Google 検索では URL を不透明型の文字列として扱いますが、リンクとして機能する必要はありません。複数のビジネス拠点がある場合は、各拠点の @id が一意になるようにしてください。

address

PostalAddress

特定のビジネス拠点の住所。

address.addressCountry

Text

2 文字の ISO 3166-1 alpha-2 国コードを指定します。

address.addressLocality

Text

都市

address.addressRegion

Text

都道府県(該当する場合)。

address.postalCode

Text

郵便番号。

address.streetAddress

Text

残りの住所(該当する場合)。

name

Text

会社名。

推奨プロパティ
acceptsReservations

Boolean

食事を提供するビジネスかどうかを、True または False で指定します。True の場合は、potentialAction も定義することをおすすめします。

aggregateRating

AggregateRating

複数の評価やレビューに基づくローカル ビジネスの平均評価。レビュー スニペットのガイドラインと、必須および推奨の総合評価プロパティのリストに準拠します。

department

LocalBusiness

この表のいずれかのプロパティを使用して、部門ごとの項目をネストして定義できます。

geo

GeoCoordinates

ビジネス拠点の地理的座標。

geo.latitude

Number

ビジネス拠点の緯度。精度は小数点 5 桁以上にする必要があります。

geo.longitude

Number

ビジネス拠点の経度。精度は小数点 5 桁以上にする必要があります。

menu

URL

食事を提供するビジネスの場合は、メニューの完全修飾 URL。

openingHoursSpecification

OpeningHoursSpecification の配列または単一のオブジェクト(両方サポートされます)

ビジネスの営業時間。

openingHoursSpecification.closes

Time

営業終了時刻を hh:mm:ss 形式で指定します。

openingHoursSpecification.dayOfWeek

Text

次のうち 1 つ以上を指定します。

  • Monday
  • Tuesday
  • Wednesday
  • Thursday
  • Friday
  • Saturday
  • Sunday
openingHoursSpecification.opens

Time

営業開始時刻を hh:mm:ss 形式で指定します。

openingHoursSpecification.validFrom

Date

季節営業の開始日を YYYY-MM-DD 形式で指定します。

openingHoursSpecification.validThrough

Date

季節営業の終了日を YYYY-MM-DD 形式で指定します。

potentialAction

ReserveAction または OrderAction

ビジネス アクションを指定する方法については、ビジネス アクションのプロパティをご覧ください。

review

Review

ローカル ビジネスのレビュー。レビュー スニペットのガイドラインと、必須および推奨のレビュー プロパティのリストに準拠します。

telephone

Text

顧客からの連絡を受けるメインの電話番号。電話番号には、必ず国コードと市外局番を含めてください。

url

URL

特定のビジネス拠点の完全修飾 URL。@id プロパティとは異なり、このプロパティにはリンクとして機能する URL を指定する必要があります。

レストランのプロパティ

ホスト固有のリストにレストランを含めるには、以下のプロパティを含めてください。

必須プロパティ
image

URL または ImageObject の繰り返しフィールド

ビジネスの画像。

画像に関するその他のガイドライン:

  • すべてのページに少なくとも 1 つの画像が必要です(マークアップを含めるかどうかは問いません)。Google は、アスペクト比と解像度に基づいて検索結果に表示する最適な画像を選択します。
  • 画像の URL は、クロールやインデックス登録に対応できる必要があります。
  • 画像はマークアップされたコンテンツを表している必要があります。
  • .jpg、.png、.gif のいずれかの形式の画像を指定する必要があります。
  • 適切な画像が選択されるようにするために、アスペクト比が 16x9、4x3、1x1 の高解像度画像(50,000 ピクセル以上の画像)を複数指定してください。

以下に例を示します。

"image": [
  "https://example.com/photos/1x1/photo.jpg",
  "https://example.com/photos/4x3/photo.jpg",
  "https://example.com/photos/16x9/photo.jpg"
]
name

Text

会社名。

servesCuisine

servesCuisine

レストランをマークアップする場合には、提供する料理の種類を指定します。

ビジネス アクションのプロパティ

Google 検索の構造化データでは、次の 2 種類のビジネス アクションがサポートされています。

  • OrderAction - 商品またはサービスの配送に対応していることを表します。
  • ReserveAction - レストラン、車、ホテルの部屋など、物理的なものを日時を指定して予約できることを表します。

次の 2 つの表に、それぞれのアクション タイプのプロパティを示します。

OrderAction プロパティ

推奨プロパティ
deliveryMethod

DeliveryMethod

注文の配送方法。次のいずれかの値を使用します。

  • http://purl.org/goodrelations/v1#DeliveryModePickUp
  • http://purl.org/goodrelations/v1#DeliveryModeOwnFleet
priceSpecification

DeliveryChargeSpecification

送料(配送サービスを提供する場合)。

priceSpecification.appliesToDeliveryMethod

DeliveryMethod

このプロパティは、配送方法が http://purl.org/goodrelations/v1#DeliveryModeOwnFleet の場合にのみ適用されます。

priceSpecification.price

Number

送料の合計を数値のみで指定します。通貨記号は含めず、priceCurrency プロパティを使用して通貨コードを指定します。

priceSpecification.priceCurrency

Text

3 文字の ISO 4217 通貨コードを指定します。

priceSpecification.eligibleTransaction.price

Number

最小注文金額を数値のみで指定します。通貨記号は含めず、eligibleTransaction.priceCurrency プロパティを使用して通貨コードを指定します。

priceSpecification.eligibleTransaction.priceCurrency

Text

3 文字の ISO 4217 通貨コードを指定します。

priceSpecification.eligibleTransactionVolume

PriceSpecification

配送サービスの対象となる最小注文金額を指定します。

ReserveAction プロパティ

必須プロパティ
result

Reservation

予約の詳細。Reservation のできる限り具体的なサブタイプを使用してください。たとえば、レストランの予約には FoodEstablishmentReservation を使用します。

result.name

Text

予約対象の名称。例: 「La Boheme 2 名席」

推奨プロパティ
result.provider

Person

対応した担当者の詳細。

result.provider.name

Text

提供者の名前。

フィードバックを送信...