php – 如何禁用Magento的简单产品URL重写管理?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 如何禁用Magento的简单产品URL重写管理?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我在一个Magento安装上运行了3个在线商店.

它们共享超过10,000个SKU(我将它们设置为简单产品),但前端可见的唯一产品是每个商店的分组产品(与SKU相关联).

因此,我的URL重写表非常繁重,在检查VARien PRofiler时,我遇到了“mage :: dispatch :: routers_match”,这需要5秒多的时间才能完成.我估计这是因为它是一张如此大的桌子.这让我想到了我的问题:

如何指定我不想重写哪个URL Magento.无论如何,我可以告诉它不要重写简单的产品网址吗?仅这一点就会使表格下降到1/3.

PS:Magento CE 1.7.0.2

编辑:

谢谢Tobias指出我正确的方向.我去了app / code / core / Mage / CataLOG / Model / Url.PHP,并将函数refreshProductRewrITes编辑为:

foreach ($products as $product) {
        if($product->getTyPEId() == "simple"){
            continue;
        }
        else {
        $this->_refreshProductRewrite($product,$this->_categories[$StoreRootCategoryId]);
        foreach ($product->getCategoryIds() as $categoryId) {
            if ($categoryId != $storeRootCategoryId && isset($this->_categories[$categoryId])) {
                if (strpos($this->_categories[$categoryId]['path'],$storeRootCategoryPath . '/') !== 0) {
                    continue;
                }
                $this->_refreshProductRewrite($product,$this->_categories[$categoryId]);
            }
        }
    }
    }

解决方法

存储在core_url_rewrite中的产品的集合在Mage_Catalog_Model_Url refreshProductRewrites中生成.

您可以重写此类并实现您自己的实现,该实现仅存储分组的产品.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 如何禁用Magento的简单产品URL重写管理?全部内容,希望文章能够帮你解决php – 如何禁用Magento的简单产品URL重写管理?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。