monsieurbiz/mbiz_sitemap 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

monsieurbiz/mbiz_sitemap

最新稳定版本:v0.1.0

Composer 安装命令:

composer require monsieurbiz/mbiz_sitemap

包简介

Magento module which adds models to generate XML sitemaps.

README 文档

README

This extension simplifies the sitemap.xml generation.

How it works

It is very simple.

Every 30 minutes, according to the cron setup in app/etc/config.xml the sitemaps will be generated.

By default there is not sitemap defined. You can add sitemaps by observing the event mbiz_sitemap_generate_sitemap and add a sitemap to the index in your code.

Example

This is an observer of the event 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);
    }
}

Troubleshooting

Where is the sitemap index?

You can find the index there: /sitemap-index-CODE.xml where CODE is the store's code. By default it is /sitemap-index-default.xml.

For now the module generates only for the store with store_id=1.

How can I change the schedule?

You can change the schedule by updating the configuration with your own module. By now it is not possible to change it using the admin panel.

Where do I need to generate the sitemaps?

You choose where to generate the sitemap in your observer.

By default the module creates the directory /sitemaps. So you can generate them in it.

But if you want to generate your sitemaps somewhere else you can, it will work well.

Can I generate the sitemaps myself?

Yes, just run this code:

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

License

See LICENSE.

Maintainer

This module is maintained by Monsieur Biz.

统计信息

  • 总下载量: 282
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0
  • 更新时间: 2017-10-04