我希望从我的sitemap.xml文件中限制某些产品页面。
我扩展了Mage_Sitemap_Model_Sitemap类并重写了generateXml()
函数,我使用的是Magento CE 1.9.0.1
我已修改
$collection = Mage::getResourceModel('sitemap/catalog_product')->getCollection($storeId);
到这个
$collection = Mage::getModel('catalog/product')->getCollection($storeId)->addAttributeToFilter('visibility', 4);
当生成站点地图时,它只在输出的站点地图中提供$ baseURL。
我有什么遗失的吗?代码如下.......
/**
* Generate Products Sitemap
*/
$changefreq = (string)Mage::getStoreConfig('sitemap/product/changefreq');
$priority = (string)Mage::getStoreConfig('sitemap/product/priority');
$collection = Mage::getModel('catalog/product')->getCollection($storeId)->addAttributeToFilter('visibility', 4);
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
);
$this->sitemapFileAddLine($xml);