SuperAPI AI 工具集

rendering-strategies

营销与增长

查看项目

更新于 10-14 21:21

技能介绍

用途

该技能面向技术 SEO,帮助用户为不同页面类型选择或优化渲染策略,以提升搜索引擎与 AI 爬虫的可见性。其核心原则(Golden Rule)是:页面数据与元数据必须在页面加载时、无需执行 JavaScript 即可获取,才能获得最佳 SEO 效果。

调用方式

首次使用时,如认为有帮助,可用 1–2 句话说明该技能覆盖的内容及其重要性,然后给出主要输出;后续使用或用户要求跳过时,直接给出主要输出。

主要能力

覆盖静态与动态渲染的对比:SSG、SSR、ISR、CSR 及各自适用时机。

分析爬虫行为:Googlebot 会渲染 JS(但有延迟);AI 爬虫不执行 JS。

组件级检查:内容是否存在于初始 HTML 中,涉及标签页、轮播、导航等。

动态渲染:当无法完全采用 SSR/SSG 时,为爬虫提供预渲染(Prerender)。

渲染方法

SSG(静态站点生成):HTML 在构建时生成,SEO 最佳,适合博客、文档、营销页面等很少变动的内容;框架如 Next.js getStaticProps、Astro、Gatsby。

SSR(服务端渲染):HTML 在每次请求时生成,SEO 良好,适合新闻、产品页等动态、个性化内容;代价是服务器负载更高、TTFB 慢于 SSG;框架如 Next.js getServerSideProps、Remix。

ISR(增量静态再生成):构建时静态生成,页面可在一段时间后重新验证,SEO 良好,兼顾静态性能与新鲜度,适合百万级页面的大型站点;框架如 Next.js 在 getStaticProps 中使用 revalidate。

CSR(客户端渲染):服务器只发送最小 HTML 外壳,内容在 JS 加载后于浏览器渲染,SEO 差,爬虫可能看到空内容、索引延迟或失败;适合仪表盘、账户页、内部工具等无需搜索可见性的场景,应避免用于公开内容、营销页、博客。

动态渲染:向爬虫提供预渲染 HTML,向用户提供 SPA,是完整 SSR/SSG 不可行时(如遗留 SPA 迁移)的兜底方案。做法是检测爬虫 user-agent,路由到预渲染服务(如 Prerender.io)或无头渲染。Google 允许此做法,但预渲染内容应与用户体验一致。

爬虫行为

Googlebot:渲染 JS(Chrome),可能有数天队列;初始 HTML 内容权重完整,优先 SSR/SSG。

AI 爬虫(GPTBot、ClaudeBot、PerplexityBot):不执行 JS;内容必须存在于初始 HTML,否则 CSR 内容不可见。

Bingbot:渲染 JS,与 Googlebot 类似。

AI 爬虫的抓取量约为 Googlebot 的 28%。关键内容(文章、元数据、导航)必须位于初始 HTML 中。

组件级:内容需在初始 HTML 中

Google 不会模拟用户点击(标签页、轮播、“加载更多”),通过 AJAX 或交互加载的内容无法被发现。

标签页/手风琴:所有标签内容在加载时即在 DOM 中;服务端渲染,使用 <details>/<summary> 或 CSS 显示/隐藏。

轮播:所有幻灯片在初始 HTML 中;服务端渲染,CSS/JS 仅用于显示/隐藏。

Hero:标题、CTA、LCP 图片在 HTML 中;不要仅靠 JS 渲染。

导航:所有导航链接在首次绘制中;关键链接不要用 JS 注入菜单。

建议:所有关键内容用 SSR/SSG 服务端渲染,JS 仅用于交互(显示/隐藏、动画)。点击后才加载的内容不会被索引。

决策指南

博客、文档、营销:SSG 或 ISR,SEO 最佳、快速、静态。

产品、新闻、动态:SSR,内容新鲜、对爬虫友好。

仪表盘、账户:CSR,无需 SEO、需要鉴权。

遗留 SPA:动态渲染,作为迁移到 SSR/SSG 前的过渡。

输出格式

当前设置:SSG、SSR、CSR 或混合。

建议:按页面类型给出。

组件检查:标签页、轮播、导航的内容是否在初始 HTML 中。

参考:Next.js Rendering、Vercel SSR vs SSG。

相关技能

site-crawlability:AI 爬虫优化、关键内容 SSR、URL 管理。

generative-engine-optimization:GEO、AI 爬虫不执行 JS。

core-web-vitals:LCP、首屏用 SSR/SSG、客户端渲染损害 LCP。

mobile-friendly:移动优先索引、内容一致性。

tab-accordion:内容在加载时即在 DOM、服务端渲染标签页。

carousel:内容在初始 HTML、服务端渲染幻灯片。

hero-generator:Hero 在初始 HTML、避免仅 JS。

navigation-menu-generator:导航在首次绘制、不要仅 JS 菜单。