为自定义模型生成站点地图
我已经开发了一个定制模块,该模块列出了网站上的一系列人员。每个人都有自己的URL(一个定制的Magento控制器,它对Person模型进行基本的CRUD),我需要将这些公共URL馈入Google Sitemap XML文件中。 如果可以的话,我想使用Magento自己的站点地图生成程序和cron。 在Mage_Sitemap_Model_Observer已经拉在所有的网站地图记录sitemaps表,并一个接一个电话他们的generateXml()方法。 $collection = Mage::getModel('sitemap/sitemap')->getCollection(); /* @var $collection Mage_Sitemap_Model_Mysql4_Sitemap_Collection */ foreach ($collection as $sitemap) { /* @var $sitemap Mage_Sitemap_Model_Sitemap */ try { $sitemap->generateXml(); } catch (Exception $e) { $errors[] = $e->getMessage(); } } 我认为我需要在sitemaps表中添加新的Sitemap,然后将其调用以为我的自定义模型记录生成我的(单独的)XML文件。但是,我不知道如何告诉Magento使用我的扩展My_Module_Model_Sitemap而不是just Mage_Sitemap_Model_Sitemap,后者将只给我一个XML文件,列出所有与主站点地图相同的类别,产品和CMS页面。 该sitemaps表有一个sitemap_type列,但据我所知,在Magento代码库中从未引用过该列。 如何覆盖覆盖Mage_Sitemap_Model_Sitemap自有generateXml()方法的同时使用Magento的内置站点地图引擎?还是我必须为自己的目的构建替代站点地图系统?