ローカル ビジネス

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 マークアップを使用して AMP HTML でレストラン リストのページを作成し、個々のレストラン ページをマークアップします。実装の詳細については、カルーセルに関するドキュメントをご覧ください。

注文と予約のシナリオ

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

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

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

料理の注文
{
  "@context": "http://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": "http://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": "http://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 も定義することをおすすめします。

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

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

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

提供者の名前を指定します。

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