SEO 百科
JavaScript SEO
本页目录
JavaScript SEO 指的是围绕 JavaScript 网页,让搜索引擎能正确抓取、渲染和收录的相关考量[2]。
处理流程
Google 处理 JavaScript 网页,要经过三个阶段[2]:
- 抓取
- 呈现
- 编入索引
抓取工具用无头浏览器运行 JavaScript[2]。网页会先进入抓取队列,等资源允许时才会渲染,渲染结果还会重新解析,从中找出的网址会回到抓取队列[2]。
渲染的前提
JavaScript 运行起来,有一个前提:这个网址得先被抓取[2]。
如果 robots.txt 把这个网址标记为禁止抓取,抓取工具会跳过它,也就不会渲染它产生的 JavaScript[2]。也就是说,一处屏蔽会连带挡住渲染这一步。
推荐的形态
原因有两个。一是这样的页面能让用户和抓取工具更快看到内容;二是并非所有抓取工具都会运行 JavaScript[1][2]。也就是说,把内容直接放进 HTML 更稳妥。
兼容性上的限制
Google 对所支持的 API 和 JavaScript 特性有一些限制[2]。
要保证代码兼容,需要按专门的排查清单来检查[2]。其中一条常见做法是功能检测:先判断所需能力是否存在,缺失时提供替代方案[2]。
以延迟加载图片为例,先判断所需的能力是否存在:
if ('IntersectionObserver' in window) {
initLazyLoading();
} else {
loadAllImages();
}
支持的浏览器按视口加载图片,不支持的浏览器一次性全部加载。
附录
参见
参考资料
官方(境外)
- 《bingbot Series: JavaScript, Dynamic Rendering, and Cloaking. Oh...》,Bing 网站管理员博客。
- 《了解 JavaScript SEO 基础知识》,Google 搜索中心。
第三方
- 《Dynamic Rendering: Should You Still Use It?》,Search Engine Journal。
外部链接
无。