本地商家 Schema 详解:Google 要求和建议的属性、完整的 JSON-LD 示例、营业时间、多门店标记、验证方法,以及如何提升在 AI 回答中的可见度。

简而言之
本地商家 Schema 是一段结构化数据,通常采用 JSON-LD 格式,用来向搜索引擎描述一家实体商家:类型、名称、地址、电话、坐标、营业时间和网站。Google 只要求填写 name 和 address,但建议提供地理坐标、营业时间、电话、URL 和价格区间。这段标记帮助 Google 和 AI 助手把您的网站与它们从 Google 商家资料(Google Business Profile)和各类目录中了解到的商家关联起来;它不能取代商家资料,也不能保证获得富媒体搜索结果。
想深入了解?请询问
本地商家 Schema 是一种 Schema 标记类型,可以把商店、餐厅、诊所或代理机构的联系信息区块转化为机器可读的数据。Google 在其本地商家结构化数据指南中对此有详细说明,词汇表则来自 schema.org/LocalBusiness。本指南为您提供一个可直接改用的完整示例、真正重要的规则,以及会让标记失去作用的常见错误。
LocalBusiness 是 schema.org 中的一个类型,指“某个具体的实体商家或组织的分支机构”。它继承自两个父类型 Organization 和 Place,因此既能使用公司属性(标志、电话、社交媒体账号),也能使用地点属性(地址、坐标、地图、营业时间)。
schema.org 列出了 30 个直接子类型,其中许多还有自己的下级类型。Google 要求您使用最具体的子类型。牙科诊所应使用 Dentist,面包店使用 Bakery,律师事务所使用 LegalService 或 Attorney。最常见的选择如下:
| 商家 | 推荐类型 | 父类型 |
|---|---|---|
| 餐厅、咖啡馆、酒吧 | Restaurant, CafeOrCoffeeShop, BarOrPub | FoodEstablishment |
| 商店 | ClothingStore, HardwareStore, Florist... | Store |
| 牙医、医生、药店 | Dentist, Physician, Pharmacy | MedicalBusiness |
| 美发店、水疗中心、美甲店 | HairSalon, DaySpa, NailSalon | HealthAndBeautyBusiness |
| 水管工、电工、屋顶承包商 | Plumber, Electrician, RoofingContractor | HomeAndConstructionBusiness |
| 律师、公证人 | Attorney, Notary | LegalService |
| 酒店、民宿 | Hotel, BedAndBreakfast | LodgingBusiness |
| 汽修厂、汽车经销商 | AutoRepair, AutoDealer | AutomotiveBusiness |
| 会计师、银行网点 | AccountingService, BankOrCreditUnion | FinancialService |
| 代理机构、顾问、其他专业事务所 | ProfessionalService | LocalBusiness |
如果商家同时符合多个类型,Google 接受数组形式,例如 ["Store", "AutoRepair"]。Google 不支持为此目的使用 additionalType。
Google 的文档把属性分为两组。必填属性只有两个;让标记真正发挥作用的是建议属性。
| 属性 | 在 Google 中的状态 | 应填写的内容 |
|---|---|---|
name | 必填 | 与店面招牌和商家资料完全一致的商家名称 |
address | 必填 | 一个 PostalAddress,包含街道、城市、地区、邮政编码和国家代码 |
geo | 建议 | 纬度和经度,至少保留 5 位小数 |
openingHoursSpecification | 建议 | 营业日、开门和关门时间、季节性例外 |
telephone | 建议 | 主要电话号码,带国家代码和区号 |
url | 建议 | 该门店专属的有效页面 |
priceRange | 建议 | 相对价格区间,如 "$$" 或 "$20-50",不超过 100 个字符 |
menu, servesCuisine | 建议(餐饮) | 菜单 URL 和菜系 |
department | 建议 | 拥有独立营业时间或电话的部门(超市里的药房) |
aggregateRating, review | 仅建议点评网站使用 | 您的网站收集的其他商家的评分,绝不能是您自己的 |
image, logo, sameAs, areaServed, hasMap | Google 未列出,schema.org 中有效 | 照片、标志、账号 URL、服务区域、地图链接:有助于实体识别 |
最后一行对 AI 可见度很重要。sameAs 将您的页面与商家资料、社交账号和目录条目关联起来,帮助任何系统确认这些资料描述的是同一个实体。
JSON-LD 是 Google 推荐的格式:一个类型为 application/ld+json 的 script 标签,放在门店页面的 head 或 body 中。下面是一家虚构牙科诊所的完整示例,请替换为您自己的数据:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Dentist",
"@id": "https://www.example-dental.com/lyon/#business",
"name": "Example Dental Lyon",
"url": "https://www.example-dental.com/lyon/",
"image": "https://www.example-dental.com/images/lyon-front.jpg",
"logo": "https://www.example-dental.com/images/logo.png",
"telephone": "+33 4 00 00 00 00",
"priceRange": "$$",
"address": {
"@type": "PostalAddress",
"streetAddress": "12 Rue de la République",
"addressLocality": "Lyon",
"postalCode": "69002",
"addressRegion": "Auvergne-Rhône-Alpes",
"addressCountry": "FR"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 45.76012,
"longitude": 4.83584
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "08:30",
"closes": "19:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Saturday",
"opens": "09:00",
"closes": "12:30"
}
],
"sameAs": [
"https://www.facebook.com/exampledentallyon",
"https://www.linkedin.com/company/example-dental"
]
}
</script>有三个细节让这个示例更加稳健:@id 为商家提供一个稳定的标识符,网站上的其他区块(Organization、Service、Review)都可以引用它;坐标按 Google 的要求保留了 5 位小数;url 指向门店页面,而不是首页。如果您不想手写代码,可以使用我们免费的 Schema 生成器,填写表单即可生成代码块。
每组营业时间相同的日期使用一个 OpeningHoursSpecification 对象。Google 的文档涵盖了以下特殊情况:
opens 设为 "00:00",closes 设为 "23:59"。opens 和 closes 都设为 "00:00"。validFrom 和 validThrough 日期(YYYY-MM-DD)。营业时间变化时,请在更新商家资料的同时更新标记。两者营业时间不一致,是 Google 和 AI 回答中出现错误信息的常见原因。
每个门店都需要自己的页面,配有自己的 LocalBusiness 区块以及各自的地址、电话和营业时间。不要把十个地址堆在首页的一个区块里。首页放置品牌的 Organization 区块,每个门店页面通过 parentOrganization 引用它。我们关于多门店 SEO 和本地落地页的指南介绍了如何搭建这些页面。
超市里的药房或汽车经销店里的维修中心,应放入 department 数组,只写出与主商家不同的属性。Google 建议将其命名为“{商店名称} {部门名称}”,除非该部门有自己的品牌。
上门服务的水管工仍然可以使用 LocalBusiness,填写注册办公地址,并用 areaServed 描述服务范围。Google 没有将 areaServed 列入其属性,但 schema.org 接受它,这样也能让您的页面与设置了服务区域的商家资料保持一致。
不能。Google 商家资料仍然是本地资源包(Local Pack)和 Google 地图的主要信息来源。Google 帮助中心指出,本地搜索结果主要取决于相关性、距离和知名度,并且“信息完整准确的商家更有可能出现在搜索结果中”。Schema 标记作用于另一侧:让您的网站与商家资料表达同样的信息,并采用机器无需猜测即可读取的格式。
| 标准 | Google 商家资料 | LocalBusiness Schema |
|---|---|---|
| 存放位置 | 在 Google 的系统中,由经过验证的所有者管理 | 在您网站的代码中 |
| 主要作用 | 本地资源包、地图、知识面板、评价 | 为 Google、Bing 和 AI 助手提供清晰的实体数据 |
| 谁能读取 | Google 的产品 | 任何读取您页面的爬虫 |
| 验证 | 必需(明信片、视频、电话...) | 无需验证,但必须与页面可见内容一致 |
| 优先级 | 第一 | 第二,作为一致性层 |
两者之间的纽带是 NAP 一致性:名称、地址和电话在商家资料、网站、标记和目录中的写法完全相同。我们对 NAP 的定义详细说明了相关规则,本地 SEO 页面则介绍了 Schema 在其他本地信号中的位置。
用两个工具测试每个门店模板:Google 的富媒体搜索结果测试(Rich Results Test),检查是否符合 Google 功能的展示资格;以及 Schema Markup Validator,按照 schema.org 检查语法。我们的结构化数据验证工具可以对任意 URL 进行快速检查。部署之后,Search Console 的增强功能报告会批量显示错误。
Google 的结构化数据政策设定了基本框架:“请勿标记对页面读者不可见的内容。”违规可能导致人工处置措施,使页面失去富媒体搜索结果的资格。我们最常见到的错误如下:
| 错误 | 后果 | 修正 |
|---|---|---|
使用通用的 LocalBusiness 类型 | 对业务的理解不够精确 | 使用最具体的子类型 |
| 地址或电话与商家资料不同 | 信号相互矛盾,回答中出现错误数据 | 各处使用相同的 NAP |
为自家商家自行编写 aggregateRating | 不显示评价星级,可能受到人工处置 | 删除它;展示评价时不要使用自我推荐式标记 |
| 所有门店放在首页的一个区块里 | 门店信息混淆,没有一个与其页面对应 | 每个门店一个页面、一个区块 |
| 标记中的营业时间未在页面上显示 | 标记被忽略或被标记为问题 | 在页面正文中显示营业时间 |
| 坐标只有 2 或 3 位小数 | 定位不精确 | 至少 5 位小数 |
| 变更后营业时间过时 | 顾客被引导到已关门的店 | 同时更新商家资料和标记 |
评价方面的错误值得特别注意:自 2019 年起,Google 不再为 LocalBusiness 或 Organization 发布的关于自身的“自我推荐式”评价显示星级。我们的评价 Schema 指南涵盖了细节,同样的逻辑也适用于 FAQ Schema:只标记页面上展示的内容。
当有人向 ChatGPT、Gemini 或 Perplexity 询问“里昂周六营业的牙医”时,答案来自助手能够读取并交叉核对的来源:商家资料数据、目录、点评平台以及商家自己的网站。我们关于 AI 回答中目录网站的研究显示了这些第三方条目被引用的频率。
结构化数据从两个方面提供帮助。它为爬虫提供明确无歧义的事实(营业时间、地址、类型),不依赖于解析页脚;它还通过 sameAs 和一致的 NAP,把您的网站与其他资料所描述的同一实体联系起来。我们关于面向 AI 搜索的结构化数据的指南说明了更全面的情况,而面向大语言模型的结构化数据审核则展示语言模型会从您的页面中提取什么。仅有标记永远不够:这些事实也必须写在可见文本中,因为大多数助手读取的是页面本身,而不只是其中的 JSON-LD。
要判断这些努力是否有回报,Sorank 的 AI 提及追踪会跟踪客户提出的本地问题,并显示您的商家是否被引用;GEO 优化则帮助您发布助手会引用的门店和服务内容。我们面向本地商家的页面总结了这一方法。
需要记住的规则:一个门店,一个页面,一个 LocalBusiness 区块,名称、地址、电话和营业时间与您的商家资料完全一致。添加它,验证它,并在商家每次发生变化时更新它。
放在描述该门店的页面上:只有一个门店的商家放在首页,拥有多个地址的商家放在每个门店页面上。把 JSON-LD 脚本放在该页面的 head 或 body 中。品牌本身最好用首页上的 Organization 区块来描述。
Google 并未把结构化数据列为排名因素,本地资源包的排名主要取决于商家资料的相关性、距离和知名度。标记能帮助 Google 正确理解和展示您的商家信息,并让网站与商家资料保持一致。它的价值在于清晰度和获得功能展示的资格,而不是直接提升排名。
可以。到客户所在地提供服务的商家可以使用 LocalBusiness,或使用更具体的子类型(如 Plumber),并填写注册办公地址。服务范围可以用 areaServed 属性描述,schema.org 接受该属性,尽管 Google 没有将其列出。请确保这些信息与商家资料中设置的服务区域保持一致。
他们已先于您体验了 SORANK

