magento2_Magento 修正来自首页的产品页面包屑导航

时间:2018-05-01  来源:magento  阅读:

修正的方法,找到文件app/code/core/Mage/Catalog/Helper/Data.php

复制一份到local代码池

app/code/local/Mage/Catalog/Helper/Data.php
在函数getBreadcrumbPath的开始部分,加上如下的代码逻辑:

 

 代码如下 getBreadcrumbPath()
    {
        if (!$this->_categoryPath) {
            $path = array();
            //add by date 2013-04-07 产品页面包屑导航修正
            if ($this->getProduct() && !$this->getCategory()) {
                $_categoryIds = $this->getProduct()->getCategoryIds();
                rsort($_categoryIds);
                if ($_categoryId = $_categoryIds[0]) {
                    $_category = Mage::getModel("catalog/category")->load($_categoryId);
                    Mage::register("current_category", $_category);
                }
            }
            //end date 2013-04-07
           
            if ($category = $this->getCategory()) {
                $pathInStore = $category->getPathInStore();
                $pathIds = array_reverse(explode(",", $pathInStore));
                $categories = $category->getParentCategories();
                // add category path breadcrumb
                foreach ($pathIds as $categoryId) {
                    if (isset($categories[$categoryId]) && $categories[$categoryId]->getName()) {
                        $path["category".$categoryId] = array(
                            "label" => $categories[$categoryId]->getName(),
                            "link" => $this->_isCategoryLink($categoryId) ? $categories[$categoryId]->getUrl() : ""
                        );
                    }
                }
            }
            if ($this->getProduct()) {
                $path["product"] = array("label"=>$this->getProduct()->getName());
            }
            $this->_categoryPath = $path;
        }
        return $this->_categoryPath;
    }

首先判断当前是否是产品页,如果是并且没有Category信息,就获取产品所属的Category IDs,Magento中一个产品可以加入多个Category中,现在也不管那么多了,只挑出其中一个幸运的Category作为current_category

magento2_Magento 修正来自首页的产品页面包屑导航

http://m.bbyears.com/wangyezhizuo/41074.html

推荐访问:magento如何注销重新登录 magento的数据库配置文件 magento+ magento免费模板 magento官网 magento2安装 magento2的sql语句在哪里
相关阅读 猜你喜欢
本类排行 本类最新