用php编辑xml文件(站点地图)!

时间:2009-11-21 13:50:01

标签: php xml

每次在我的网站上创建新广告(使用php和mysql分类网站)时,我需要制作一个自动递增xml站点地图(供搜索引擎使用)的脚本。

我一直坚持如何自动增加xml站点地图。每个站点地图最多可包含50000条URLS记录。

此外,每当用户删除广告时(例如在销售商品后),我都需要在网站地图中删除此网址。

我已经有一个脚本从我的数据库生成xml站点地图,但是,它会覆盖xml站点地图,并在每次用户发布广告时创建所有内容。

甚至可以在此级别使用PHP编辑xml文件吗? 例如,如果我可以读取xml文件中有多少行,我会知道在何处设置限制(50000)并创建一个新行。 此外,如果我可以阅读xml文件并搜索行,我也可以删除广告。

但这可能吗?

感谢代码段或使用的方法!

由于

2 个答案:

答案 0 :(得分:1)

您只需使用SimpleXML打开站点地图,然后执行以下操作:

  1. 迭代元素
  2. 如果您找到该元素,请更新它(网址,最后更改等)
  3. 如果你发现它没有附加它。
  4. 当然,必须针对多站点地图情况进行一些修改。此外,您可以使用一些XPath来搜索您的文件。但请注意,执行此类XML工作可能会非常缓慢。

    因此,我认为您应该考虑定期(例如每12或24小时)重新生成整个站点地图的可能性,因为搜索引擎很少会提取您的站点地图。

答案 1 :(得分:0)

考虑到每次添加/删除广告时添加或删除此文件的开销,我会坚持使用您现有的脚本(从头开始重建站点地图)并将其设置为每晚运行一次,比如说午夜。您不会失败,因为搜索引擎最多不会每天多次获取您的站点地图。