使用Codeigniter创建动态站点地图

时间:2013-05-25 11:35:18

标签: php codeigniter sitemap

我想要提交给Google的60,000个网址。鉴于每个文件限制10,000个URL,我将需要制作站点地图索引并链接到该索引中的至少6个站点地图文件。

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

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

1 个答案:

答案 0 :(得分:0)

有些想法可能有所帮助,您可以在项目中构建站点地图生成器。

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

如上所述循环遍历每个数据集,并为它们创建索引文件。

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

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

Google 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