Desarrollé un módulo a medida que enumera una serie de personas en el sitio. Cada persona tiene su propia URL (un controlador Magento a medida, que hace CRUD básico en modelos Personales) y necesito alimentar estas URL públicas en un archivo XML de Google Sitemap.
Quiero usar la generación del mapa del sitio de Magento y el cron si puedo.
El Mage_Sitemap_Model_Observerya extrae todos los registros de Sitemap de la sitemapstabla y uno por uno llama a sus generateXml()métodos.
$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();
}
}
Creo que necesito agregar mi nuevo Sitemap en la sitemapstabla que luego se llamará para generar mi archivo XML (separado) para mis registros de modelos personalizados. Sin embargo, no sé cómo decirle a Magento que use mi extendido en My_Module_Model_Sitemaplugar de solo Mage_Sitemap_Model_Sitemap, el último de los cuales solo me dará un archivo XML con las mismas categorías, productos y páginas CMS que los mapas de sitio principales.
La sitemapstabla tiene una sitemap_typecolumna, pero por lo que puedo decir, esto nunca se menciona en la base de código de Magento.
¿Cómo puedo usar el motor de mapa del sitio incorporado de Magento mientras sobrescribo Mage_Sitemap_Model_Sitemappara tener mi propio generateXml()método? ¿O debo construir un sistema de mapa de sitio alternativo solo para mis propios fines aquí?
Mage_Sitemap_Model_Sitemapy me da otro mapa del sitio que contiene los productos, categorías, páginas CMS, no usa mi versión extendida. No estoy seguro de cómo decirle cómo hacerlo.
Mage_Sitemap_Model_Sitemapsitio y agregar mi propio modelo en la categoría y llamadas de productos. Se actualizará pronto con el progreso.
Mage_Sitemap_Model_Sitemapclase y sobrescribir,generateXml()¿verdad? que has intentado