魔扣论坛

魔扣源码论坛业务
查看: 1633|回复: 6

[经验交流] Magento 修正来自首页的产品页面包屑导航(Breadcrumb)

[复制链接]
  • TA的每日心情
    难过
    20 小时前
  • 签到天数: 2954 天

    [LV.Master]开坛老将

    7万

    主题

    227

    回帖

    27万

    积分

    管理员

    Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

    魔扣币
    745683
    贡献
    157891
    威望
    32799

    最佳新人活跃会员热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2015-12-15 15:46:10 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x

    这近发现Magento产品页面的面包屑导航很怪异:如果产品是从Category产品列表中进入Product详细页面,则面包屑导航中含有Category Path; 否则,当从首页,或搜索结果中,或者其他什么地方进入,则缺少之。我想,可能是Magento支持一个产品放入多个Category的缘故吧。不管怎么样,产品页中缺少了Category Path,用户体验不大好。

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

    复制一份到local代码池

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

    1. public function getBreadcrumbPath()
    2.     {
    3.         if (!$this->_categoryPath) {
    4.             $path = array();
    5.             //add by date 2013-04-07 产品页面包屑导航修正
    6.             if ($this->getProduct() && !$this->getCategory()) {
    7.                 $_categoryIds = $this->getProduct()->getCategoryIds();
    8.                 rsort($_categoryIds);
    9.                 if ($_categoryId = $_categoryIds[0]) {
    10.                     $_category = Mage::getModel('catalog/category')->load($_categoryId);
    11.                     Mage::register('current_category', $_category);
    12.                 }
    13.             }
    14.             //end date 2013-04-07
    15.             
    16.             if ($category = $this->getCategory()) {
    17.                 $pathInStore = $category->getPathInStore();
    18.                 $pathIds = array_reverse(explode(',', $pathInStore));
    19.                 $categories = $category->getParentCategories();
    20.                 // add category path breadcrumb
    21.                 foreach ($pathIds as $categoryId) {
    22.                     if (isset($categories[$categoryId]) && $categories[$categoryId]->getName()) {
    23.                         $path['category'.$categoryId] = array(
    24.                             'label' => $categories[$categoryId]->getName(),
    25.                             'link' => $this->_isCategoryLink($categoryId) ? $categories[$categoryId]->getUrl() : ''
    26.                         );
    27.                     }
    28.                 }
    29.             }
    30.             if ($this->getProduct()) {
    31.                 $path['product'] = array('label'=>$this->getProduct()->getName());
    32.             }
    33.             $this->_categoryPath = $path;
    34.         }
    35.         return $this->_categoryPath;
    36.     }
    复制代码

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


    会员购买:>> 点击购买 << | 魔扣币购买:>> 点击购买 <<
    承接业务:服务器代维丨网站托管丨SEO
    联系客服:微信:morko-net | QQ:1367681973

    该用户从未签到

    1

    主题

    272

    回帖

    546

    积分

    高级魔扣

    Rank: 4

    魔扣币
    273
    贡献
    273
    威望
    0
    发表于 2017-1-4 20:19:19 | 显示全部楼层
    魔扣源码论坛网络版块就像是监狱,本来是偷了个钱包进来的,等出去的时候就什么都学会了。   

    该用户从未签到

    0

    主题

    231

    回帖

    462

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    231
    贡献
    231
    威望
    0
    发表于 2017-3-12 09:35:01 来自手机 | 显示全部楼层
    秋风凉凉,夜也变长!轻声问候,是否繁忙?换季之时,魔扣源码论坛,注意健康,多喝开水,增加衣裳,早晚天冷,小心着凉,保重身体,快乐无恙。

    该用户从未签到

    2

    主题

    260

    回帖

    524

    积分

    高级魔扣

    Rank: 4

    魔扣币
    262
    贡献
    262
    威望
    0
    发表于 2017-8-20 12:50:37 | 显示全部楼层
    呵呵。。。

    该用户从未签到

    2

    主题

    279

    回帖

    560

    积分

    高级魔扣

    Rank: 4

    魔扣币
    279
    贡献
    279
    威望
    0
    发表于 2018-1-25 14:29:37 | 显示全部楼层
    既然选择离开,就不要说不会忘记;既然你我没有缘分,就不需要誓言,因为誓言再多也没有用。今天的一切,魔扣源码论坛就像水流过一样不留痕迹。明天、以后,等我们再见的时候,就变成了陌生人。

    该用户从未签到

    4

    主题

    265

    回帖

    534

    积分

    高级魔扣

    Rank: 4

    魔扣币
    265
    贡献
    265
    威望
    0
    发表于 2018-8-25 13:12:50 来自手机 | 显示全部楼层
    太漂亮的源码了,非常感谢魔扣源码论坛

    该用户从未签到

    2

    主题

    245

    回帖

    492

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    245
    贡献
    245
    威望
    0
    发表于 2019-3-16 12:11:50 | 显示全部楼层
    你喜欢的人也喜欢你,你想念的人也正在想念你。这就是全世界最重要的事情,拿什么都不能换。',
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表