monsieurbiz/mbiz_sitemap

Magento 模块,用于添加生成 XML 网站地图的模型。

安装: 180

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 0

开放问题: 0

类型:magento-module

v0.1.0 2017-10-04 08:48 UTC

This package is auto-updated.

Last update: 2024-08-29 04:20:06 UTC


README

此扩展简化了 sitemap.xml 的生成。

工作原理

它非常简单。

根据 app/etc/config.xml 中的 cron 设置,每 30 分钟将生成网站地图。

默认情况下没有定义网站地图。您可以通过监听事件 mbiz_sitemap_generate_sitemap 并在代码中将网站地图添加到索引中来添加网站地图。

示例

这是事件 mbiz_sitemap_generate_sitemap 的观察者。

class Acme_Demo_Model_Observer
{
    public function generateSitemaps(Varien_Event_Observer $observer)
    {
        // Fill the sitemap
        $sitemap = Mage::getModel('mbiz_sitemap/sitemap');
        $collection = Mage::getResourceModel('acme_demo/article_collection');
        foreach ($collection as $article) {
            $sitemap->addUrl(
                $article->getUrl(), // URL
                date('c', strtotime($article->getUpdatedAt())), // Last Updated
                'monthly', // Frequency
                0.8 // Priority
            );
        }
      
        // Generate the XML file
        $sitemap->generate(
            Mage::getBaseDir() . DS . 'sitemaps' . DS . 'articles.xml', // The XML file
          	Mage::getUrl('', [ // The URL
            	'_direct' => 'sitemaps/articles.xml',
            	'_type' => Mage_Core_Model_Store::URL_TYPE_DIRECT_LINK,
        	])
        );
        $observer->getIndex()->addSitemap($sitemap);
    }
}

故障排除

网站地图索引在哪里?

您可以在那里找到索引:/sitemap-index-CODE.xml,其中 CODE 是商店代码。默认情况下为 /sitemap-index-default.xml

目前该模块只为 store_id=1 的商店生成。

我如何更改计划?

您可以通过更新配置并使用自己的模块来更改计划。目前无法通过管理员面板更改它。

我需要在何处生成网站地图?

您可以在观察者中选择在何处生成网站地图。

默认情况下,模块创建 /sitemaps 目录。因此,您可以在其中生成它们。

但是,如果您想在其他地方生成网站地图,您也可以这样做,它将正常工作。

我可以自己生成网站地图吗?

是的,只需运行此代码

Mage::getSingleton('mbiz_sitemap/cron')->generateSitemaps();

许可证

请参阅 LICENSE

维护者

此模块由 Monsieur Biz 维护。