
Front-End-Checklist 实战为产品与服务页面添加 Review 与 AggregateRating 结构化数据获取星评富结果【免费下载链接】Front-End-Checklist The essential checklist for modern web development, for humans and AI agents项目地址: https://gitcode.com/gh_mirrors/fr/Front-End-Checklist导读本文围绕 Front-End-Checklist 仓库中seo/technical领域的 review 规则展开系统讲解如何通过 Schema.org 的Review与AggregateRating结构化数据让 Google 在搜索结果中直接展示星级评分从而提升点击率。读完本文你将掌握两种 JSON-LD 的标准写法、富结果必需的属性清单、Google 政策红线以及从源码层面验证结构化数据生成质量的完整流程。规则背景与适用场景在 skills/review/SKILL.md 中该技能被明确定位为 SEO 类目下的一条规则适用于产品页、本地商家页、菜谱、应用、图书以及任何聚合用户评价的页面在审核电商或点评类站点的富结果资格时使用。对应的规则内容仓库位于 packages/content/rules/en/seo/review.mdx其 frontmatter 记录了规则的元数据优先级prioritymedium难度difficultyintermediate预估耗时estimatedTime10 分钟分类seo / technical规则的 tldr 概括了核心要点在单个评论页使用Reviewschema在产品/服务页使用AggregateRatingschemaAggregateRating必须包含ratingValue、ratingCount或reviewCount以及合法的bestRating/worstRating评分必须反映真实用户评价Google 会惩罚自卖自夸或伪造的评分上线前用 Google 的 Rich Results Test 校验标记。为什么值得做星级评分的价值Review与AggregateRating结构化数据可以让 Google 直接在搜索结果中渲染星标评分形成与普通蓝色链接截然不同的富摘要rich snippet。规则文档给出的数据是搜索结果中的星级评分最多可将点击率CTR提升约 35%相应地缺失或错误的 schema 意味着拥有合法标记的竞争对手会拿走这部分可见性优势。从源码角度看本仓库自身也在用同样的机制为规则页生成结构化数据——详见下文源码级实现一节。核心代码示例在 Product 上嵌套 AggregateRating最常见的落地方式是将AggregateRating嵌套在页面主实体如Product内部声明该商品的综合评分与评分数量。以下是 skills/review/references/rule.md 提供的标准 JSON-LD 写法script typeapplication/ldjson { context: https://schema.org, type: Product, name: Wireless Noise-Cancelling Headphones, image: https://example.com/headphones.jpg, description: Premium headphones with 30-hour battery life., aggregateRating: { type: AggregateRating, ratingValue: 4.7, reviewCount: 312, bestRating: 5, worstRating: 1 } } /script要点说明aggregateRating是嵌套对象其type必须是AggregateRatingratingValue是平均分的数字字符串如4.7应与页面上对用户可见的平均分一致reviewCount表示参与评分的总人数与页面展示的计数一致。单个评价的 Review Schema当页面展示的是某一条具体评价如用户评价详情页时使用Review类型并通过itemReviewed指向被评价对象、author声明评价者、reviewRating声明该条评价的打分script typeapplication/ldjson { context: https://schema.org, type: Review, itemReviewed: { type: Product, name: Wireless Headphones }, author: { type: Person, name: Jane Smith }, datePublished: 2025-02-14, reviewBody: Excellent sound quality and very comfortable for long sessions., reviewRating: { type: Rating, ratingValue: 5, bestRating: 5 } } /script注意这里的reviewRating是单条评价的打分Rating类型与代表整体平均分的AggregateRating是两种不同的结构使用场景不要混淆。富结果必需属性清单AggregateRating嵌套在受支持的实体类型内PropertyRequiredNotesratingValueYes平均评分数字字符串ratingCount或reviewCountYes评分总数bestRatingRecommended最高可能评分默认 5worstRatingRecommended最低可能评分默认 1ReviewPropertyRequiredNotesauthorYesPerson或OrganizationreviewRatingYes包含ratingValue的Rating对象itemReviewedYes被评价的对象支持星评富结果的实体类型Google 目前会对以下类型的评价展示星标评分Product产品、Recipe菜谱、Movie电影、Book图书、Software软件、LocalBusiness本地商家、Course课程、Event活动。规则文档特别强调见Exceptions小节只添加页面能够如实支撑的 schema 类型与页面内容无关的结构化数据比没有更糟。此外即使 schema 在技术上合法如果页面内容无法直观印证例如页面上根本没有展示评分与评价该标记仍可能具有误导性。政策红线Google 明令禁止的违规规则文档列举了以下会被视为违规的做法自写评价自己给自己的业务写评价Review your own business不能反映真实用户体验的评价AggregateRating中reviewCount: 0的空评分在页面并未向用户展示评价内容的情况下放置评价标记。这些红线与 packages/content/rules/en/seo/review.mdx 的 frontmatter 中声明的指导方针一致评分必须来自真实用户伪造评分违反 Google 的结构化数据政策且ratingValue、ratingCount必须来自真实评价数据。验证与上线流程使用 Rich Results Test 验证规则文档给出的标准验证步骤Schema 能被无错误地检测到正确的富结果类型具备资格eligible所有必需属性均已提供。Google 的 Rich Results Test 是官方富结果验证工具将页面 URL 或代码粘贴进去即可看到解析结果与错误提示。自动化检查Automated Checks检查渲染后的 HTML 与 HTTP 响应头确认预期的元数据或可抓取性信号存在对受影响的 URL 使用 Google Search Console 或等价工具测试部署后对代表性页面集合重新抓取re-crawl。人工检查Manual Checks确认改动没有引入与 canonical-url、robots 或结构化数据信号之间的冲突若indexability可索引性、canonical-url规范链接或主内容质量本身存在问题应优先修复这些基础问题再优化 schema 细节——这是规则文档Exceptions小节给出的优先级建议。源码级实现仓库如何生成与渲染 JSON-LDFront-End-Checklist 的repo/seo包packages/seo/src/index.ts为所有规则页统一提供结构化数据能力是实现上述模式的可参考范本。统一入口generateStructuredDatapackages/seo/src/structured-data.ts 定义了生成任何 Schema.org 类型的基础函数export function generateStructuredData( type: string, data: Recordstring, unknown ): StructuredData { return { context: https://schema.org, type: type, ...data } }它固定输出context: https://schema.org再根据传入的type与属性展开这正是文档中所有 JSON-LD 示例的公共骨架。基于它派生了generateWebsiteStructuredDataWebSite SearchAction、generateRuleStructuredDataArticle、generateBreadcrumbStructuredDataBreadcrumbList与generateFAQStructuredDataFAQPage等具体实现。渲染为script typeapplication/ldjsonrenderStructuredData 将结构化数据对象序列化为script标签描述符export function renderStructuredData(structuredData: StructuredData) { return { type: script, props: { key: structured-data, type: application/ldjson, dangerouslySetInnerHTML: { __html: JSON.stringify(structuredData) } } } }输出type: application/ldjson与规则文档示例中的script typeapplication/ldjson完全对应说明仓库在实际渲染层面严格执行了 JSON-LD 标准。测试如何验证输出质量packages/seo/src/tests/seo.test.ts 覆盖了结构化数据的生成断言generateStructuredData(Thing, { name: Example })[type]必须等于ThinggenerateWebsiteStructuredData()、generateRuleStructuredData()、generateBreadcrumbStructuredData()、generateFAQStructuredData()的type分别正确而在 渲染测试 中renderStructuredData(generateWebsiteStructuredData())断言返回描述符的type为script、props.type为application/ldjson——这组测试可以视为检查页面最终输出是否包含正确 JSON-LD 块的自动化落地示例与规则文档Automated Checks中检查渲染后 HTML 中结构化数据信号的要求一一对应。与规则配套的相邻检查该规则在内容仓库中有若干关联规则见 packages/content/rules/en/seo/review.mdx 的relatedRulesproduct产品 schema、json-ld-validJSON-LD 合法性、structured-data结构化数据总体规范与schema-noindex-conflictschema 与 noindex 冲突它们同属seo/technical领域评审时常被一起审查。如果你在站点上同时实施这几条规则可以对照仓库中对应的技能文档如 skills/json-ld-valid进行联合验证。完整落地检查清单把上述内容整合成一份可直接对照执行的清单确定页面主实体类型是否属于支持星评富结果的八类实体Product / Recipe / Movie / Book / Software / LocalBusiness / Course / Event页面是否向用户真实展示了评分与评价内容政策合规的前提选择正确结构聚合平均分用aggregateRatingAggregateRating单条评价用Review补齐必需属性ratingValueratingCount/reviewCount建议补充bestRating默认 5与worstRating默认 1单条Review必须含author、reviewRating、itemReviewed用 Rich Results Test 验证无解析错误、富结果类型具备资格、必需属性齐全上线后用 Search Console 确认富结果展示并对代表性页面重新抓取复查未引入 canonical-url、robots、结构化数据之间的信号冲突。结论为产品、服务与商家页面添加Review/AggregateRating结构化数据是用极低的实现成本换取搜索结果可见性提升的高性价比 SEO 手段。关键是守住两条底线属性必须齐全参照文中的必需属性表数据必须真实评分来自真实用户评价且页面对用户可见。Front-End-Checklist 仓库自身通过repo/seo包统一生成 JSON-LD 并用测试锁定输出格式这套生成-渲染-测试-验证的工程化路径值得在你的项目中复制。【免费下载链接】Front-End-Checklist The essential checklist for modern web development, for humans and AI agents项目地址: https://gitcode.com/gh_mirrors/fr/Front-End-Checklist创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考