跳转到主内容

什么是结构化数据(Schema)?

image

定义

结构化数据(Structured Data)或模式标记(Schema Markup)是以标准化格式显示网页内容的代码,以便搜索引擎能够更好地理解它。虽然普通HTML是为人类读者设计的,但结构化数据是为机器(搜索引擎)设计的,以便精确理解。例如,当有文本"詹姆斯·邦德"时,结构化数据会添加元数据,以便搜索引擎可以清楚地知道它是电影标题还是人名。

结构化数据主要使用Schema.org的词汇表,并以JSON-LD、Microdata、RDFa等格式实现。其中,JSON-LD(JavaScript Object Notation for Linked Data)最为广泛使用,也是Google推荐的。JSON-LD与HTML分离,便于管理,并以JSON格式写在脚本标签内,因此不需要修改现有的HTML结构。

当结构化数据正确实现时,您可以获得增强的搜索结果,如富片段(Rich Snippet)、富卡片(Rich Card)和知识图谱(Knowledge Graph)。例如,为食谱页面添加结构化数据可以在搜索结果中直接显示烹饪时间、卡路里和评分,大大提高点击率。

特点

  • 增强搜索结果:使用结构化数据可以在搜索结果中直接显示评分、价格、库存状态、活动日期等,显著提高点击率(CTR)。
  • 语音搜索优化:Google助手、Siri、Alexa等语音助手可以更好地理解网页信息并用于语音回答。
  • 知识面板曝光:适当的结构化数据可以让您出现在Google的知识面板或搜索结果顶部的卡片格式中。
  • 支持各种内容类型:存在用于各种内容类型的模式,包括产品、食谱、活动、文章、评论、视频、常见问题和招聘信息。
  • 提高搜索引擎理解度:清晰地传达页面的上下文和关系,帮助搜索引擎更准确地分类内容并与相关搜索查询匹配。

使用方法

以下是有效实施和管理结构化数据的方法。

第1步:识别内容类型 首先,确定您的网页具有什么类型的内容。从Schema.org提供的数百种模式中选择合适的模式。常用类型包括Article(文章)、Product(产品)、Recipe(食谱)、Event(活动)、Organization(组织)、Person(人物)、LocalBusiness(本地企业)和Review(评论)。

第2步:编写JSON-LD代码 根据所选模式类型以JSON-LD格式编写结构化数据。参考Schema.org文档包含必需和推荐属性。使用Google的结构化数据标记助手可以更轻松地完成此操作。

第3步:插入HTML 将编写的JSON-LD代码用<script type="application/ld+json">标签包装后插入网页的<head><body>标签内。通常建议将其放置在<head>部分。

第4步:测试和验证 使用Google的富结果测试(Rich Results Test)或模式标记验证器(Schema Markup Validator)验证结构化数据是否正确实现。立即修复任何错误或警告。

第5步:使用Google Search Console监控 在Google Search Console的"增强功能"部分监控结构化数据的状态。发现错误时会收到通知,并可以查看哪些页面有问题。

第6步:持续更新 每当内容更改时,结构化数据也需要一起更新。特别是价格、库存状态、活动日期等经常变化的信息必须保持准确。使用自动化工具或CMS插件可以使管理更容易。

示例

示例1:博客文章(Article)模式

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "什么是反向链接?SEO初学者完整指南",
"image": [
"https://zero-coke.com/img/backlink-guide.jpg"
],
"datePublished": "2024-03-23T09:00:00+09:00",
"dateModified": "2024-03-23T14:30:00+09:00",
"author": {
"@type": "Person",
"name": "张三",
"url": "https://zero-coke.com/author/zhang"
},
"publisher": {
"@type": "Organization",
"name": "Zero-Coke",
"logo": {
"@type": "ImageObject",
"url": "https://zero-coke.com/logo.png"
}
},
"description": "以初学者也能理解的方式解释反向链接的定义、特点和使用方法。",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://zero-coke.com/blog/what-is-backlink"
}
}
</script>

示例2:产品(Product)模式

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "无线蓝牙耳机 XYZ-2000",
"image": [
"https://example.com/photos/earphone-front.jpg",
"https://example.com/photos/earphone-side.jpg"
],
"description": "配备噪音消除功能的高级无线耳机",
"brand": {
"@type": "Brand",
"name": "TechSound"
},
"sku": "XYZ2000-BLK",
"mpn": "925872",
"offers": {
"@type": "Offer",
"url": "https://example.com/product/xyz2000",
"priceCurrency": "CNY",
"price": "899",
"priceValidUntil": "2024-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "342"
}
}
</script>

示例3:食谱(Recipe)模式

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Recipe",
"name": "简单泡菜汤食谱",
"image": "https://example.com/photos/kimchi-jjigae.jpg",
"author": {
"@type": "Person",
"name": "厨师朴英姬"
},
"datePublished": "2024-03-20",
"description": "20分钟完成的美味泡菜汤",
"prepTime": "PT10M",
"cookTime": "PT10M",
"totalTime": "PT20M",
"recipeYield": "4人份",
"recipeCategory": "主菜",
"recipeCuisine": "韩国料理",
"keywords": "泡菜汤、韩国料理、简单食谱",
"nutrition": {
"@type": "NutritionInformation",
"calories": "250卡路里"
},
"recipeIngredient": [
"陈泡菜 300克",
"猪肉 200克",
"豆腐 1/2块",
"大葱 1根",
"辣椒粉 1汤匙"
],
"recipeInstructions": [
{
"@type": "HowToStep",
"text": "将泡菜和猪肉切成一口大小。"
},
{
"@type": "HowToStep",
"text": "在锅中炒泡菜和肉。"
},
{
"@type": "HowToStep",
"text": "加水煮沸,然后加入豆腐和大葱。"
}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"ratingCount": "127"
}
}
</script>

示例4:常见问题(FAQ)模式

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "有多少反向链接才有效?",
"acceptedAnswer": {
"@type": "Answer",
"text": "质量比数量重要得多。来自权威网站的一个反向链接可能比来自低质量网站的100个反向链接更有价值。"
}
},
{
"@type": "Question",
"name": "购买反向链接怎么样?",
"acceptedAnswer": {
"@type": "Answer",
"text": "购买反向链接明确违反了Google的指南。如果被发现,您可能会受到严重的惩罚,最坏的情况下,您可能会从搜索结果中完全删除。"
}
}
]
}
</script>

示例5:活动(Event)模式

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "2024年网络开发大会",
"description": "学习最新网络开发趋势和技术的年度会议",
"image": "https://example.com/conference-2024.jpg",
"startDate": "2024-09-15T09:00:00+09:00",
"endDate": "2024-09-15T18:00:00+09:00",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
"location": {
"@type": "Place",
"name": "首尔COEX会展中心",
"address": {
"@type": "PostalAddress",
"streetAddress": "永东大路513号",
"addressLocality": "首尔",
"addressRegion": "江南区",
"postalCode": "06164",
"addressCountry": "KR"
}
},
"organizer": {
"@type": "Organization",
"name": "韩国网络开发者协会",
"url": "https://example.com"
},
"offers": {
"@type": "Offer",
"url": "https://example.com/tickets",
"price": "50000",
"priceCurrency": "KRW",
"availability": "https://schema.org/InStock",
"validFrom": "2024-06-01T00:00:00+09:00"
}
}
</script>

优缺点

优点

  • 提高搜索可见性:结构化数据在搜索结果中显示为更突出的富片段,显著增加点击率。研究表明,具有富片段的搜索结果平均CTR提高30%以上。

  • 增加搜索引擎理解度:清晰地传达页面内容和上下文有助于搜索引擎提供更准确的结果。这也可以间接有助于提高排名。

  • 语音搜索和AI优化:结构化数据使语音助手和基于AI的搜索引擎易于提取和利用信息,为未来的搜索趋势做准备。

缺点

  • 实施复杂性:编写正确的结构化数据需要理解Schema.org的大量文档并准确编写JSON-LD格式。复杂的页面可能需要嵌套或组合多个模式类型。

  • 维护负担:每当内容更改时都必须更新结构化数据。对于价格或库存经常变化的网站,如电子商务网站,需要自动化以防止数据不一致。

  • 不保证立即效果:添加结构化数据并不能保证会出现富片段。Google最终决定是否显示富结果,会考虑页面质量和相关性。某些模式类型只有在满足特定条件时才会显示为富结果。

常见问题

问:结构化数据直接提高搜索排名吗? 答:不,结构化数据本身不是直接的排名因素。Google已正式确认这一点。但是,富片段带来的更高点击率可以间接帮助提高排名。此外,搜索引擎可以更好地理解页面以更准确地与相关查询匹配。

问:我应该在所有页面上添加结构化数据吗? 答:不是所有页面都需要,但最好在具有特定内容类型的页面上添加,如产品页面、博客文章、活动页面和常见问题页面。通常在首页添加Organization模式,在博客文章添加Article模式。确定优先级并从重要页面开始。

问:我应该使用JSON-LD、Microdata还是RDFa? 答:最推荐使用JSON-LD。Google正式偏好JSON-LD,它与HTML分离,便于管理,出错可能性较低。Microdata和RDFa直接向HTML标签添加属性,使其更复杂且难以维护。除非有特定原因,否则选择JSON-LD。

问:错误实施结构化数据会受到惩罚吗? 答:一般错误不会受到惩罚,但故意提供虚假信息或使用垃圾标记可能会导致人工操作(Manual Action)。例如,在结构化数据中添加实际不存在的5星评论,或标记用户看不到的内容,都违反了指南。如果在Google Search Console中收到警告,请立即修复。