Ich habe ein maßgeschneidertes Modul entwickelt, das eine Reihe von Personen auf der Website auflistet. Jede Person hat ihre eigene URL (ein maßgeschneiderter Magento-Controller, der grundlegende CRUD-Funktionen für Personenmodelle ausführt), und ich muss diese öffentlichen URLs in eine XML-XML-Datei mit Google Sitemap einspeisen.
Ich möchte Magentos eigene Sitemap-Generierung und den Cron verwenden, wenn ich kann.
Die Mage_Sitemap_Model_Observer
zieht bereits alle Sitemap-Datensätze aus der sitemaps
Tabelle und ruft nacheinander ihre generateXml()
Methoden auf.
$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();
}
}
Ich denke, ich muss meine neue Sitemap in die sitemaps
Tabelle einfügen, die dann aufgerufen wird, um meine (separate) XML-Datei für meine benutzerdefinierten Modelldatensätze zu generieren. Ich weiß jedoch nicht, wie ich Magento anweisen soll, mein erweitertes My_Module_Model_Sitemap
statt nur Mage_Sitemap_Model_Sitemap
das zu verwenden. Letzteres gibt mir nur eine XML-Datei, in der alle Kategorien, Produkte und CMS-Seiten als Haupt-Sitemaps aufgeführt sind.
Die sitemaps
Tabelle hat eine sitemap_type
Spalte, auf die in der Magento-Codebasis jedoch nie verwiesen wird, soweit ich das beurteilen kann.
Wie kann ich die in Magento integrierte Sitemap-Engine verwenden, während ich die überschreibe, Mage_Sitemap_Model_Sitemap
um eine eigene generateXml()
Methode zu haben ? Oder muss ich hier ein alternatives Sitemap-System nur für meine eigenen Zwecke erstellen?
Mage_Sitemap_Model_Sitemap
und gibt mir eine andere Sitemap mit den Produkten, Kategorien, CMS-Seiten - meine erweiterte Version wird nicht verwendet. Ich bin mir nicht sicher, wie ich es sagen soll.
Mage_Sitemap_Model_Sitemap
Site neu zu schreiben und mein eigenes Modell unter den Kategorien- und Produktaufrufen hinzuzufügen. Wird bald mit Fortschritt aktualisiert.
Mage_Sitemap_Model_Sitemap
klasse erweitern undgenerateXml()
richtig überschreiben ? was hast du versucht