我将把这篇文章留在这里以示怀旧!这篇文章首先要讨论的是 SEO 人员经常面临的一个特殊困境:
- 使用 AJAX 将内容加载到页面的网站可以更快并提供更好的用户体验
- 但是:这些网站对于 Google 来说可能很难(或不可能)抓取,并且使用 AJAX 可能会损害网站的 SEO。
幸运的是Google
已经为网站站长们提供了一个方案,帮助 电报数据库 他们实现两全其美。我将在本文后面提供 Google 文档的链接,但这些建议可以归结为一些相对简单的概念。
尽管谷歌一年前就提出了这个提案,但我觉得它并没有引起太多关注——尽管它对SEO来说应该特别有用。这篇文章的目标读者是那些还没有探索过谷歌AJAX抓取提案的人——我会尽量写得简短,并且不会太过专业!
我会解释这些概念,并向你展示一个已经应用这些概念的著名网站。我还制作了自己的演示版本,其中包含可供你下载和查看的代码。
基础知识
本质上,遵循此提案的网站 技能和领导力发展 需要提供两个版本的内容:
- 为支持 JS 的用户提供“AJAX 样式”的 URL 内容
- 搜索引擎的内容,位于静态的“传统”URL – Google 将其称为“HTML 快照”
过去,开发者在 AJAX 网站上 使用 URL 中的“命名锚点”部分(即“井号”# 及其后的文本)。例如,请看这个演示 – 点击菜单项会更改命名锚点,并将内容动态加载到页面中。这对用户来说很棒,但搜索引擎蜘蛛却无法处理。
新提案不再使用井号 #,而是要求使用井号和感叹号:#!
# !组合偶尔会被比我更极客的人称为“hashbang”;我喜欢这个词的发音,所以我会坚持使用它。
Hashbang Wallop:AJAX 爬取协议
只要你在 URL 中使用井号,Google 就会 新加坡电话列表 识别出你遵循了他们的协议,并以一种特殊的方式解析你的 URL——他们会提取井号后的所有内容,并将其作为 URL 参数传递给网站。他们使用的参数名称是:
然后,Google 会重写该 URL,并从该静态页面请求内容。为了展示重写后的 URL 是什么样子,以下是一些示例:只要您可以让静态页面(这些示例中右侧的 URL)显示与用户看到的相同的内容(在左侧 URL),那么它就会按计划工作。
关于静态 URL 的两点建议
目前,Google 似乎在其索引中返回的是静态 URL——这很合理,因为他们不想将非 JS 用户的访问引导到需要 JavaScript 的页面,从而损害他们的体验。因此,网站可能需要添加一些 JavaScript 代码来检测是否启用了 JS 的用户,并将他们引导至已访问页面的“增强型” AJAX 版本。