Doanh nghiệp địa phương

Khi người dùng tìm kiếm các doanh nghiệp trên Google Tìm kiếm hoặc Maps, kết quả Tìm kiếm có thể hiển thị thẻ Sơ đồ tri thức nổi bật với các chi tiết về một doanh nghiệp phù hợp với truy vấn. Khi người dùng tìm kiếm một loại doanh nghiệp, chẳng hạn như nhà hàng, họ có thể thấy một băng chuyền về các danh sách do nhiều nhà cung cấp danh sách nhà hàng lưu trữ.

Ví dụ

Bạn có thể thử các ví dụ sau bằng Công cụ kiểm tra dữ liệu có cấu trúc.

Danh sách doanh nghiệp địa phương

Dưới đây là một ví dụ về kết quả tìm kiếm về danh mục như "Nhà hàng Tây Ban Nha" hoặc về một địa điểm cụ thể như "Cascal" (một nhà hàng bít tết).

Hành động với địa điểm

Dưới đây là một ví dụ về nội dung tìm kiếm dựa trên địa điểm như "thợ cắt tóc gần đây" hoặc "tiệm làm tóc trong vòng 15 dặm".

Giờ làm việc

Các ví dụ sau đây minh họa cách đánh dấu các loại giờ làm việc khác nhau.

Giờ mở cửa thông thường

Việc loại trừ các thuộc tính validFromvalidThrough cho biết đây là giờ làm việc thông thường trong cả năm.Ví dụ này là về một doanh nghiệp mở cửa các ngày trong tuần từ 9 giờ sáng đến 9 giờ tối, và từ 10 giờ sáng đến 11 giờ tối vào cuối tuần.

"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"
  }
]
Giờ khuya

Nếu mở cửa qua nửa đêm, hãy xác định giờ mở và đóng cửa bằng một thuộc tính OpeningHoursSpecification. Ví dụ này xác định giờ mở cửa từ 6 giờ tối ngày thứ Bảy đến 3 giờ sáng ngày Chủ Nhật.

"openingHoursSpecification": {
  "@type": "OpeningHoursSpecification",
  "dayOfWeek": "Saturday",
  "opens": "18:00",
  "closes": "03:00"
}
Cả ngày

Để cho biết một doanh nghiệp mở cửa 24 giờ một ngày, hãy đặt thuộc tính open thành "00:00" và thuộc tính closes thành "23:59".Để cho biết một doanh nghiệp đóng cửa cả ngày, hãy đặt cả hai thuộc tính openscloses thành "00:00". Ví dụ sau là về một doanh nghiệp mở cửa cả ngày thứ bảy và đóng cửa cả ngày chủ nhật.

"openingHoursSpecification": [
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Saturday",
    "opens": "00:00",
    "closes": "23:59"
  },
  {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": "Sunday",
    "opens": "00:00",
    "closes": "00:00"
  }
]
Giờ theo mùa

Sử dụng cả hai thuộc tính validFromvalidThrough để xác định giờ mở cửa theo mùa. Ví dụ sau là về một doanh nghiệp đóng cửa trong kỳ nghỉ mùa đông.

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

Nhiều bộ phận

Đối với một doanh nghiệp có nhiều bộ phận, mỗi bộ phận có các thuộc tính riêng như giờ mở cửa hoặc số điện thoại, bạn có thể đánh dấu thuộc tính department bằng một phần tử cho mỗi bộ phận. Hãy xác định từng thuộc tính khác với cửa hàng chính trong từng phần tử tương ứng cho bộ phận đó.

Thực hiện theo các nguyên tắc sau cho tên bộ phận trong mục đánh dấu của bạn:

  • Bao gồm tên cửa hàng với tên bộ phận ở định dạng sau: {store name} {department name}.

    Ví dụ, gMartgMart Dược.

  • Sử dụng tên bộ phận khi bộ phận đó có tên riêng rõ ràng. Ví dụ: Best BuyGeek Squad.

Danh sách nhà hàng

Khi người dùng tìm kiếm bữa tối ngon nhất ở NYC hoặc các cụm từ về một danh sách chung khác, nội dung nhà hàng được đánh dấu của bạn có thể xuất hiện dưới dạng băng chuyền riêng của từng máy chủ trong Kết quả tìm kiếm. Để bật danh sách nhà hàng của riêng từng máy chủ, hãy tạo các trang danh sách nhà hàng của bạn trong AMP HTML bằng đánh dấu ItemList và đánh dấu các trang nhà hàng riêng lẻ. Để biết chi tiết triển khai, hãy xem tài liệu về băng chuyền.

Đặt hàng và đặt chỗ

Mục đánh dấu doanh nghiệp có thể chỉ định nhiều loại Hành động và cung cấp các tham số khác làm điều kiện cho hành động. Tùy thuộc vào dịch vụ và sản phẩm mà bạn cung cấp, bạn có thể đánh dấu nội dung của mình bằng nhiều loại tổ hợp hành động và tham số điều kiện.

Trường hợp
OrderAction
Các tham số được hỗ trợ
  • potentialAction.@type
  • potentialAction.target.inLanguage
  • potentialAction.target.actionPlatform
ReserveAction
Các tham số được hỗ trợ
  • potentialAction.@type
  • potentialAction.target.inLanguage
  • potentialAction.target.actionPlatform
  • potentialAction.result.provider

Các ví dụ sau đây minh họa mục đánh dấu cho một hành động mục tiêu duy nhất cho các doanh nghiệp khác nhau.

Đặt món
{
  "@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
      }
    }
  }
}
Đặt lịch tham gia lớp học
{
  "@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"
    }
  }
}
Đặt bàn
{
  "@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"
    }
  }
}

Có nhiều tổ hợp hành động và tham số khác. Khi phát triển các hành động phức tạp hơn, hãy đảm bảo chỉ sử dụng một giá trị duy nhất trong potentialAction.target.url hoặc potentialAction.target.urlTemplate.

Phần sau đây minh họa một số trường hợp sử dụng của các loại OrderActionReserveAction:

  • Một OrderAction và một ReserveAction: Một nhà hàng chấp nhận cả đơn yêu cầu giao tại nhà và đặt bàn.
  • Một OrderAction cho mỗi nhà cung cấp: Một nhà hàng chấp nhận đơn yêu cầu giao tại nhà thông qua hai nhà cung cấp khác nhau.
  • Một ReserveAction cho các doanh nghiệp sau:
    • Một phòng tập yoga cung cấp các lớp học khác nhau thông qua một nhà cung cấp duy nhất bao gồm tất cả các lớp.
    • Một tiệm làm tóc có nhiều nhà tạo mẫu, mỗi người có một menu dịch vụ riêng bao gồm tất cả các nhà tạo mẫu.

Nguyên tắc

Thực hiện theo các nguyên tắc sau về đánh dấu Action cho doanh nghiệp:

  • Chỉ cung cấp một giá trị duy nhất trong thuộc tính potentialAction.target.url HOẶC potentialAction.target.urlTemplate.
  • Trang web hoặc ứng dụng đích phải cho phép người dùng thực hiện hành động trực tuyến. Ví dụ: một trang web hiển thị menu của nhà hàng không phải là trang hành động hợp lệ nếu người dùng phải gọi điện thoại để đặt món hoặc đặt bàn.

Định nghĩa kiểu dữ liệu có cấu trúc

Các bảng sau liệt kê các thuộc tính và cách sử dụng các loại hành động với doanh nghiệp và doanh nghiệp địa phương, dựa trên định nghĩa đầy đủ tại shema.org/LocalBusiness.

Bạn phải bao gồm các thuộc tính bắt buộc để nội dung của mình đủ điều kiện hiển thị dưới dạng kết quả nhiều định dạng. Bạn cũng có thể bao gồm các thuộc tính mà chúng tôi khuyên dùng để thêm thông tin về nội dung nhằm mang lại trải nghiệm người dùng tốt hơn.

LocalBusiness

Định nghĩa đầy đủ về LocalBusiness có sẵn trên schema.org/LocalBusiness. Hãy xác định mỗi địa điểm doanh ngiệp địa phương là một loại LocalBusiness. Sử dụng loại phụ LocalBusiness cụ thể nhất có thể; ví dụ: Restaurant, DaySpa, HealthClub, v.v.

Thuộc tính bắt buộc
@id

URL

ID riêng toàn cầu của địa điểm doanh nghiệp cụ thể dưới dạng URL. ID này phải cố định và không thay đổi theo thời gian. Google Tìm kiếm coi URL là một chuỗi mờ và URL này không cần phải là một liên kết hoạt động. Nếu doanh nghiệp có nhiều địa điểm, hãy đảm bảo @id cho mỗi địa điểm là khác nhau.

address

PostalAddress

Địa chỉ của địa điểm doanh nghiệp cụ thể.

address.addressCountry

Text

Mã quốc gia 2 chữ cái ISO 3166-1 alpha-2.

address.addressLocality

Text

Thành phố

address.addressRegion

Text

Tiểu bang hoặc tỉnh, nếu có.

address.postalCode

Text

Mã bưu điện hoặc mã vùng.

address.streetAddress

Text

Số nhà, tên đường và số đơn nguyên (nếu có).

name

Text

Tên doanh nghiệp

Thuộc tính nên có
acceptsReservations

Boolean

Đối với các doanh nghiệp thực phẩm, giá trị này sẽ là True hoặc False. Nếu là True thì bạn cũng nên xác định potentialAction.

aggregateRating

AggregateRating

Xếp hạng trung bình của doanh nghiệp địa phương dựa trên nhiều xếp hạng hoặc đánh giá. Thực hiện theo các nguyên tắc về đoạn trích đánh giá và danh sách các thuộc tính xếp hạng tổng hợp bắt buộc và nên có.

department

LocalBusiness

Một mục lồng ghép cho một bộ phận mà bạn có thể xác định bằng cách sử dụng bất kỳ thuộc tính nào trong bảng này.

geo

GeoCoordins

Tọa độ địa lý của doanh nghiệp.

geo.latitude

Number

Vĩ độ của địa điểm doanh nghiệp. Giá trị này phải có ít nhất 5 chữ số thập phân.

geo.longitude

Number

Kinh độ của địa điểm doanh nghiệp. Giá trị này phải có ít nhất 5 chữ số thập phân.

menu

URL

Đối với các doanh nghiệp thực phẩm, giá trị này là URL đủ điều kiện của menu.

openingHoursSpecification

Một chuỗi hoặc một đối tượng (cả hai đều được hỗ trợ) OpeningHoursSpecification

Giờ mở cửa của địa điểm doanh nghiệp.

openingHoursSpecification.closes

Time

Thời gian mà địa điểm doanh nghiệp đóng cửa, ở định dạng hh:mm ss.

openingHoursSpecification.dayOfWeek

Text

Một hoặc nhiều giá trị sau đây:

  • Monday (Thứ Hai)
  • Tuesday (Thứ Ba)
  • Wednesday (Thứ Tư)
  • Thursday (Thứ Năm)
  • Friday (Thứ Sáu)
  • Saturday (Thứ Bảy)
  • Sunday (Chủ Nhật)
openingHoursSpecification.opens

Time

Thời gian mà địa điểm doanh nghiệp mở cửa, ở định dạng hh:mm ss.

openingHoursSpecification.validFrom

Date

Ngày bắt đầu mở cửa của một doanh nghiệp theo mùa, ở định dạng YYYY-MM-DD.

openingHoursSpecification.validThrough

Date

Ngày bắt đầu đóng cửa của một doanh nghiệp theo mùa, ở định dạng YYYY-MM-DD.

potentialAction

ReserveAction hoặc OrderAction

Đọc thêm về cách xác định hành động với doanh nghiệp.

review

Review

Bài đánh giá về doanh nghiệp địa phương. Thực hiện theo các nguyên tắc về đoạn trích đánh giá và danh sách các thuộc tính xếp hạng tổng hợp bắt buộc và nên có.

telephone

Text

Số điện thoại doanh nghiệp là phương thức liên lạc chính cho khách hàng. Hãy đảm bảo bao gồm mã quốc gia và mã vùng trong số điện thoại.

url

URL

URL đủ điều kiện của địa điểm doanh nghiệp cụ thể. Không giống như thuộc tính @id, thuộc tính URL này phải là một liên kết đang hoạt động.

Nhà hàng

Để bao gồm một nhà hàng trong danh sách dành riêng cho từng máy chủ, hãy bao gồm các thuộc tính sau:

Thuộc tính bắt buộc
image

Trường trùng lặp với URL hoặc ImageObject

Ảnh về doanh nghiệp.

Nguyên tắc bổ sung về hình ảnh:

  • Mỗi trang phải chứa ít nhất một hình ảnh (cho dù bạn có đánh dấu hình ảnh đó hay không). Google sẽ chọn hình ảnh tốt nhất để hiển thị trong kết quả Tìm kiếm dựa trên tỷ lệ co và độ phân giải.
  • Google phải có thể thu thập dữ liệu và lập chỉ mục URL hình ảnh.
  • Hình ảnh phải phù hợp với nội dung được đánh dấu.
  • Hình ảnh phải ở định dạng .jpg, .png hoặc .gif.
  • Để có kết quả tốt nhất, hãy cung cấp nhiều hình ảnh có độ phân giải cao (tối thiểu 500.000 pixel khi nhân chiều rộng và chiều cao) với các tỷ lệ co sau: 16x9, 4x3 và 1x1.

Ví dụ:

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

Text

Tên doanh nghiệp

servesCuisine

servesCuisine

Nếu bạn đánh dấu một nhà hàng, hãy cung cấp loại ẩm thực họ phục vụ.

Thuộc tính hành động với doanh nghiệp

Dữ liệu có cấu trúc trong Google Tìm kiếm hỗ trợ hai loại hành động với doanh nghiệp:

  • OrderAction—đại diện cho đơn hàng yêu cầu giao sản phẩm hoặc dịch vụ tận nhà.
  • ReserveAction—đại diện cho hành động đặt trước một đối tượng thực như bàn nhà hàng, xe ô tô hoặc phòng khách sạn vào một ngày giờ cụ thể.

Hai bảng sau liệt kê các thuộc tính cho từng loại hành động.

Thuộc tính OrderAction

Thuộc tính nên có
deliveryMethod

DeliveryMethod

Phương thức mà đơn hàng được giao cho người dùng. Hãy sử dụng một trong các giá trị sau:

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

DeliveryChargeSpecifying

Chi phí dịch vụ giao hàng nếu có.

priceSpecification.appliesToDeliveryMethod

DeliveryMethod

Thuộc tính này chỉ áp dụng cho phương thức giao hàng: http://purl.org/goodrelations/v1#DeliveryModeOwnFleet

priceSpecification.price

Number

Tổng chi phí giao hàng dưới dạng giá trị số. Hãy sử dụng thuộc tính priceCurrency để biểu thị loại đơn vị tiền tệ thay vì ký hiệu tiền tệ.

priceSpecification.priceCurrency

Text

Mã tiền tệ ISO 4217 gồm 3 chữ cái.

priceSpecification.eligibleTransaction.price

Number

Số lượng đặt hàng tối thiểu ở dạng số. Hãy sử dụng thuộc tính eligibleTransaction.priceCurrency để biểu thị loại đơn vị tiền tệ thay vì ký hiệu tiền tệ.

priceSpecification.eligibleTransaction.priceCurrency

Text

Mã tiền tệ ISO 4217 gồm 3 chữ cái.

priceSpecification.eligibleTransactionVolume

PriceSpecification

Số lượng đặt hàng tối thiểu để đủ điều kiện cho dịch vụ giao hàng.

Thuộc tính ReserveAction

Thuộc tính bắt buộc
result

Reservation

Chi tiết giao dịch đặt trước. Hãy sử dụng loại phụ Reservation chi tiết nhất có thể; ví dụ: FoodEst traimentReservation để đặt bàn nhà hàng.

result.name

Text

Tên của đối tượng được đặt trước; ví dụ: "Bàn tại La Boheme."

Thuộc tính nên có
result.provider

Person

Thông tin chi tiết của nhân viên hỗ trợ khách hàng.

result.provider.name

Text

Tên của nhà cung cấp.

Gửi phản hồi về...