概述
上个月我们介绍了可扩展标记语言(XML)的基础知识及文档编写方法。虽然已能创建描述数据的 XML 文档,但其实际用途尚不明确。本教程将结合上篇内容,通过构建 Google Sitemap 文件,展示 XML 的实际应用场景。
Google Sitemap 是 Google 搜索引擎的一项测试功能,允许网站管理员提交描述网站结构的 XML 文件。这虽不能直接提升页面排名,但能为搜索引擎提供抓取路线图,提高抓取效率。Google 定义了专用的 XML 标签和属性(即 XML 模式),用于指定可抓取页面、重要性评级、最后修改时间及更新频率。这种预定义模式使信息传输结构化且高效。
基于 XML 知识,我们将为一家虚构的小部件(widgets)销售网站构建 Google Sitemap。首先需分析网站,汇总待爬取页面,并对每个页面的重要性、最后修改时间和预计更新频率进行排序。利用这些信息,按照 Google Sitemap 协议构建 XML 文件。确保 XML 标签与 Google 预期一致,正是 XML 强大灵活性的体现。通过定义“模式”,Google 建立了标准化协议,使其系统能自动利用这些结构化数据。
XML 文件创建完成后,需发布至网站并向搜索引擎提交位置。这虽不保证被收录,但能让搜索引擎在抓取时访问 Sitemap 文件,从而更高效地索引内容。结合其他 SEO 技术,创建 Google Sitemap 有助于提升搜索排名,增强竞争优势。
说明
本教程将为一个包含主页、联系页和产品页的小型小部件销售网站创建 Google Sitemap。Sitemap 旨在引导搜索引擎发现内容,而非描述内容本身,因此无需发明页面具体内容。创建 XML 文件前,需先收集网站页面信息。
Google Sitemap 协议定义了结构化信息的 XML 标签。除必须包含的页面 URL 外,还可选择包含重要性、最后修改时间和修改频率等信息。为尽可能完善信息,我们以主页为例进行分析:主页包含关键词且代码优化良好,对公司和产品概述至关重要;所有页面均在创建 Sitemap 前修改过;主页每周更新以提供新内容和优惠。掌握这些信息即可开始构建文件。
构建文件时,将对每个页面重复此过程。首先回顾 XML 基础知识:Google Sitemap 要求文件采用 UTF-8 或 Unicode 编码以容纳特殊字符,必须在 XML 声明标签中注明:
<code><?xml version="1.0" encoding="UTF-8"?> </code>该标签声明了文件类型及字符编码,对于 Google Sitemap 是固定格式。接下来是封装所有数据的根标签 <urlset>,其属性标识文件为 Google Sitemap:
<code><?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> </urlset> </code>注意开始标签包含属性,结束标签与之对应。文件所有数据均包含在 <urlset> 标签内。接着创建 <url> 标签,用于包含单个页面的信息:
<code><?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> <url> </url> </urlset> </code>在 <url> 标签内,首先使用必需的 <loc> 标签描述页面位置(URL),且必须包含 http://。首页的 <loc> 标签如下:
<code><?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> <url> <loc>http://www.widgetsexample.com</loc> </url> </urlset> </code>由于主页是索引页,直接将网站 URL 放入 location 标签即可。接着使用 <lastmod> 标签告知搜索引擎上次修改时间。假设所有页面最后修改于 10 月 31 日,注意日期格式必须为“年-月-日”:
<code><?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> <url> <loc>http://www.widgetsexample.com</loc> <lastmod>2005-10-31</lastmod> </url> </urlset> </code>已知首页内容至少每周更新一次(含产品优惠、公告等),需使用 <changefreq> 标签告知搜索引擎抓取频率。可用值如下:
- always(总是)
- hourly(每小时)
- daily(每天)
- weekly(每周)
- monthly(每月)
- yearly(每年)
- never(从不)
请务必填写最准确描述网站更新情况的值。虚报高频更新可能损害长期排名,因为搜索引擎会发现内容并未如期更新,进而惩罚欺骗行为。准确性越高越好,该值仅作为建议,不会限制搜索引擎按自身节奏抓取。当前文件状态如下:
<code><?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> <url> <loc>http://www.widgetsexample.com</loc> <lastmod>2005-10-31</lastmod> <changefreq>weekly</changefreq> </url> </urlset> </code>最后,使用 <priority> 标签告知搜索引擎页面重要性。值为 0.0 到 1.0 之间,0.0 表示最不重要,1.0 表示最重要。鉴于首页重要但不及产品页,设定值为 0.8:
<code> <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> <url> <loc>http://www.widgetsexample.com</loc> <lastmod>2005-10-31</lastmod> <changefreq>weekly</changefreq> <priority>0.8</priority> </url> </urlset> </code>至此,首页相关信息已在 Sitemap 中描述完毕。对其他页面重复此过程,每个页面信息均包裹在独立的 <url> 标签内。完整的 XML 文件如下:
<code><?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> <url> <loc>http://www.widgetsexample.com</loc> <lastmod>2005-10-31</lastmod> <changefreq>weekly</changefreq> <priority>0.8</priority> </url> <url> <loc>http://www.widgetsexample.com/contact.html</loc> <lastmod>2005-10-15</lastmod> <priority>0.5</priority> </url> <url> <loc>http://www.widgetsexample.com/products.html</loc> <lastmod>2005-10-31</lastmod> <changefreq>daily</changefreq> <priority>1.0</priority> </url> </urlset> </code>注意:产品页重要性设为 1.0,表明其为网站最重要页面;联系页预计无变更,故省略
首先将文件上传至网站根目录,命名为 sitemap.xml。随后登录 Google 账户(如无则需注册),输入 Sitemap 完整 URL 并提交:
<code>http://www.widgetsexample.com/sitemap.xml </code>点击“提交 URL”即完成操作。日后若修改 Sitemap,重新提交即可。至此,我们成功创建了 Google Sitemap 文件,这将帮助搜索引擎更高效地抓取网站,并为 SEO 工具箱增添有力工具。

