Hallo Ihr Alle!
Ich habe ein Problem mit meiner Sitemap. Google beschwert sich darüber, dass die angegebene URL nicht vollständig wäre.
Bsp.: /meine_produkt.html
Es sollte aber heißen: https://www.meinedomain.de/meine_produkt.html
Habe ich eine möglichkeit das so zu beeinflussen?
Besten Dank im vorraus.
Magento Version 1.9.3.9
Hallo @JollyJumper1983,
Magento Sitemap hat keine zusätzliche URL in der Standard-Sitemap hinzugefügt. Wenn Sie zusätzliche Seiten hinzufügen müssen, folgen Sie bitte den folgenden Schritten
Sie müssen die Methode Mage_Sitemap_Model_Sitemap :: generateXml überschreiben, da Magento kein Ereignis anbietet, das Sie dafür verwenden können.
Fügen Sie Ihren Code ein, nachdem die CMS-Seiten hinzugefügt wurden
Dies ist der Code, der die CMS-Seiten zur Sitemap hinzufügt:
/**
* Generate cms pages sitemap
*/
$changefreq = (string)Mage::getStoreConfig('sitemap/page/changefreq', $storeId);
$priority = (string)Mage::getStoreConfig('sitemap/page/priority', $storeId);
$collection = Mage::getResourceModel('sitemap/cms_page')->getCollection($storeId);
foreach ($collection as $item) {
$xml = sprintf('<url><loc>%s</loc><lastmod>%s</lastmod><changefreq>%s</changefreq><priority>%.1f</priority></url>',
htmlspecialchars($baseUrl . $item->getUrl()),
$date,
$changefreq,
$priority
);
$io->streamWrite($xml);
}
unset($collection);
Sie müssen eine ähnliche Sache mit Ihrer Seite machen.
Sie müssen Ihre benutzerdefinierten Seiten durchlaufen und dies tun:
$xml = sprintf('<url><loc>%s</loc><lastmod>%s</lastmod><changefreq>%s</changefreq><priority>%.1f</priority></url>',
htmlspecialchars($baseUrl . $item->getUrl()), //url of your custom page
$date,
$changefreq, //should be a config value
$priority //should be a config value
);
$io->streamWrite($xml); //write xml node to the big sitemap xml
-
Wenn meine Antwort nützlich ist, akzeptiere sie bitte als Lösung und gib Kudos
If my answer is useful, please Accept as Solution & give Kudos