使用Codeigniter创建动态站点地图


Creating dynamic sitemaps with Codeigniter

我有大约60000个url要提交给Google。考虑到每个文件10,000个url的限制,我将需要创建一个站点地图索引,并链接到该索引中的至少6个站点地图文件。

我不知道做这件事最有效的方法是什么。我的想法是去我的DB,采取TOP 10000行,在数据上运行我的foreach并生成我的链接。我的第一个想法是创建占位符站点地图文件(例如。Sm1.xml、sm2.xml等),并在每10,000行之后增加文件索引,并将下一个10,000插入到下一个文件中。问题是数据库中的数据总是被添加到,所以下个月我可能有70,000个url -这意味着我必须创建另一个占位符文件。

因此,考虑到这一点,我想动态地创建单个站点地图文件,但我不知道如何。

一些想法可能会有所帮助,你在你的项目中建立一个站点地图生成器。

  • 从route.php文件中获取url
  • 使用反射类获取类/方法
  • 从数据库或文本文件中获取数据

像上面所说的那样遍历每个数据集,并为它们创建索引文件。

使用CRON作业通过ping来索引文件。

使用这些搜索引擎提供的ping服务。你应该只在每天或第二天结束时ping服务,在创建新行后不要 ping它们!

谷歌Ping

http://www.google.com/webmasters/sitemaps/ping?sitemap=http://www.yourdomain.com/sitemap.xml

MSN

http://www.bing.com/webmaster/ping.aspx?siteMap=http://www.yourdomain.com/sitemap.xml