当 Google 和其他 SEO 站群搜索引擎索引网站的时候,他们并不执行 JavaScript,这似乎是在向 WordPress 单页网站靠拢,其中许多 WordPress 单页网站都依靠 JavaScript——与传统网站相比存在明显的劣势。
然而,WordPress 单页网站实际上和传统的网站相比,在 SEO 站群搜索引擎优化(SEO 站群)上的确是有优势的,因为 Google 和其它网站已经公认了这方面的挑战。他们已经为 WordPress 单页网站建立了一个机制——不仅将他们的动态页面编入索引,还专门针对互联网爬虫来优化网站页面。
在本文中,我们将主要关注 Google,不过其它大型 SEO 站群搜索引擎如 Yahoo!和 Bing 都支援相同的机制。
Google 是如何抓取 WordPress 单页网站的
当 Google 索引一个传统网站的时候,它的互联网爬虫(称之为 Googlebot)首先会扫描并检索顶层 URL 内容。一旦这一步骤完成,互联网爬虫就会跟 踪 WordPress 网页上的所有连结,同时还会给那些 WordPress 网页编写索引。接著就是重复性步骤——继续跟踪后续 WordPress 网页,最终会给此 WordPress 网页上和相关领域内的所有内容编写索引。
当 Google 试图检索一个 WordPress 单页网站的时候,它所看到的只是一个单一的 HTML 空容器(通常情况下是一个空的 div 或 body tag),所以根本没有东西可以检索,也没有连结可以抓取,更没办法索引相应的网站。
不过这还没有结束,值得庆幸的是,Google 和其它 SEO 站群搜索引擎已经意识到 WordPress 单页网站的重要性,同时为开发者提供工具——为互联网爬虫提供搜寻资讯,这可能是比传统网站优越的地方。
怎样制作一个可抓取的 WordPress 单页网站
制作一个可抓取的 WordPress 单页网站的关键第一步就是必须意识到:如果一个互联网爬虫或者一个使用 Web 浏览器的使用者提出需求的时候,网站的站群服务器必须给出相应的回 复。对于一般的访客只需要给出正常的回复即可;但是对于一个互联网爬虫,就需要回到优化过的 WordPress 网页,向互联网爬虫展示访客想要知道的内容,同时还要将格式设定为 互联网爬虫轻易就能够读出的格式。
那么一个优化过后、防互联网爬虫的网站主页看上去像什么样子呢?有可能网站 Logo 或者其它的主要图片会出现在搜寻结果里,一些 SEO 站群优化的文字可以解释你所搜寻的网站是做什么的,当然了,Google 最好是把 WordPress 网页上的 HTML 连结编入检索比较好。
不过 WordPress 网页上没有任何 CSS 样式或复杂的 HTML 结构,也没有任何 JavaScript,或者是我们不希望谷歌索引连线到网站区域。下图所显示的就是浏览器(左)和互联网爬虫(右)看的 WordPress 网页的情形。
为互联网爬虫自定义内容
通常,WordPress 单页网站连结到不同的内容会使用符号 (# !) 。另外,这些连结在对待访客和互联网爬虫的时候不会遵循同样的方式。
案例:在 WordPress 单页网站上链接到使用者页面看上去就像/index.htm#!page=user:id,123,互联网爬虫可能会看到 #! 并寻找带有 URL /index.htm?_escaped_fragment_=page=user:id,123 的 WordPress 网页。由于互联网爬虫会遵循这一模式并寻找 URL,所以 开发者可以给站群服务器编写程式以回复带有 HTML 快照的页面需求,这在浏览器里也可以很正常的通过 JavaScript 来进行渲染。
这些快照可能会被 Google 索引,但是在 Google 搜寻结果里的任何人点选清单都将被送往 /index.htm#!page=user:id,123 。在 WordPress 单页网站里 JavaScript 也将从那里开始接管并按照计划渲染 WordPress 网页。这为 WordPress 单页网站开发 者提供了专门为谷歌和专门为使用者进行调整网站的机会,而不必编写访客易读的、互联网爬虫易于理解的文字,页面可以为访客和爬虫进行优化,除此之外不用担心其 它内容。
互联网爬虫通过网站的路径是可以被控制的,开发者可以指导访客从 Google 搜寻结果到一个指定的主页面。这可能需要在开发过程里花费更多的工作,但是在搜寻结果位置和客户保留方面可以得到巨大的回报。
检测谷歌的互联网爬虫
检测互联网爬虫这可能需要一些命令列,但使用 Chrome Developer Tools 就能将这一检测变得相当容易,只要点选按钮、检查工具框:
开启 Chrome Developer Tools,点选 Google Toolbar 右边的带有三条水平线的按钮,然后从选单中选择 Tools,再点选 Developer Tools 。
在萤幕右下角是一个齿轮图示:点选进去就能看到一些高阶开发者选项,例如禁用 WordPress 加速缓存,开启 XMLHttpRequest 记录。
第 二个标签标记为 Overrides,点选 User Agent 标签旁边的核取方块,再从 Chrome 到 Firefox 、 IE 、 iPads 的下拉选单里选择任何数量的使用者代理,Googlebot 的代理不是默 认选项。为了使用它,选择其他复制并贴上使用者代理字串到输入框里。
现在,该选项卡本身是当作 Googlebot 的,当我们在网站上开启任何 URL 的时候,应该能看到互联网爬虫页面。