Eu desenvolvi um módulo sob medida que lista uma série de pessoas no site. Cada pessoa tem seu próprio URL (um controlador Magento sob medida, que faz CRUD básico nos modelos Person) e eu preciso alimentar esses URLs públicos em um arquivo XML do Google Sitemap.
Eu quero usar a geração do mapa do site do Magento e o cron, se puder.
O Mage_Sitemap_Model_Observerjá puxa todos os registros do Sitemap da sitemapstabela e um a um chama seus 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();
}
}
Acho que preciso adicionar meu novo Sitemap na sitemapstabela que será chamada para gerar meu arquivo XML (separado) para meus registros de modelo personalizados. No entanto, não sei como dizer ao Magento para usar meu estendido em My_Module_Model_Sitemapvez de apenas Mage_Sitemap_Model_Sitemap, o último dos quais me fornecerá um arquivo XML listando todas as mesmas categorias, produtos e páginas CMS dos principais sitemaps.
A sitemapstabela possui uma sitemap_typecoluna, mas isso nunca é mencionado na base de código Magento, até onde eu sei.
Como posso usar o mecanismo de sitemap embutido do Magento enquanto sobrescrito Mage_Sitemap_Model_Sitemappara ter meu próprio generateXml()método? Ou devo criar um sistema de sitemap alternativo apenas para meus próprios fins aqui?
Mage_Sitemap_Model_Sitemape me fornece outro sitemap contendo os produtos, categorias, páginas do CMS - ele não usa minha versão estendida. Não sei bem como dizer como fazê-lo.
Mage_Sitemap_Model_Sitemapsite e adicionar meu próprio modelo na categoria e nas chamadas de produtos. Será atualizado em breve com o progresso.
Mage_Sitemap_Model_Sitemapclasse e substituir,generateXml()certo? o que você tentou?