假设我们得到了这些页面:
1. http://www.mywebsite.com/users/thomas-roberts
2. http://www.mywebsite.com/pages/thomas-roberts/1
3. http://www.mywebsite.com/pages/thomas-roberts/hello-kitty-collection
是否有可能在 sitemap.xml 中执行此操作:
<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://mywebsite.com/users/^(\w+)$/</loc>
<lastmod>2006-11-18</lastmod>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>
<url>
<loc>http://mywebsite.com/users/^(\w+)$/pages/^(\w+)$</loc>
<lastmod>2006-11-18</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>http://mywebsite.com/users/^(\w+)$/pages/^(\d+)$</loc>
<lastmod>2006-11-18</lastmod>
<changefreq>daily</changefreq>
<priority>0.6</priority>
</url>
</urlset>
我希望我的示例很清楚,我们并没有真正在 sitemap.xml 文件中指定新的“url”元素,而是将正则表达式与 url 匹配,并且每次都回来更新。
如果这可能不是一个解决方案,那么 Twitter 和 Facebook 如何在 Google 中索引他们的所有页面(个人资料页面等)?他们是否会在每次创建新用户时生成新的站点地图,并在有人更新他们的页面/个人资料时更新他们的站点地图?
我非常好奇,如果我们必须以某种方式生成 sitemap.xml(其限制为 50.000 个项目和 10mb),如果内容被修改,生成站点地图会是一个好主意吗?
非常感谢。