Breadcrumbs are very useful for user navigation. Breadcrumbs for
product page, category page, etc. are created by default Magento code.
The following code will show breadcrumbs created by Magento. You can print the following code anywhere in php or phtml files.
echo $this->getLayout()->getBlock('breadcrumbs')->toHtml();
You can create you own breadcrumbs as well. Like, you may need to
create breadcrumbs if you have your own custom built module. I will show
you here, how you can do it.
It’s simple and easy. At first, you will define the breadcrumbs
block. Then, you will add label, title and link to your breadcrumbs. The
addCrumb
Magento function is used in this case.
$breadcrumbs = $this->getLayout()->getBlock('breadcrumbs');
$breadcrumbs->addCrumb('home', array('label'=>Mage::helper('cms')->__('Home'), 'title'=>Mage::helper('cms')->__('Home Page'), 'link'=>Mage::getBaseUrl()));
$breadcrumbs->addCrumb('country', array('label'=>'Country', 'title'=>'All Countries', 'link'=>'http://example.com/magento/moduleName/country'));
$breadcrumbs->addCrumb('manufacturer', array('label'=>'State', 'title'=>'States'));
echo $this->getLayout()->getBlock('breadcrumbs')->toHtml();
The label, title and link can be changed according to your need and requirement.
Hope this helps. Thanks.
来源: http://blog.chapagain.com.np/magento-easily-add-breadcrumbs-to-any-page/
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的开始部分,加上如下的代码逻辑:
/**
* Return current category path or get it from current category
* and creating array of categories|product paths for breadcrumbs
*
* @return string
*/
public function getBreadcrumbPath()
{
// added by p.c.w.l 20110603
if ($this->getProduct() && !$this->getCategory()) {
$_categoryIds = $this->getProduct()->getCategoryIds();
if ($_categoryId = $_categoryIds[0]) {
$_category = Mage::getModel('catalog/category')->load($_categoryId);
Mage::register('current_category', $_category);
}
}
// ...
首先判断当前是否是产品页,如果是并且没有Category信息,就获取产品所属的Category IDs,Magento
中一个产品可以加入多个Category中,但不管三七二十一只挑出其中一个幸运的Category作为current_category。看最终的效果:
来源:http://www.sqlstudy.com/article/magento-product-page-breadcrumb-add-category-path.html
分享到:
相关推荐
修复magento面包屑bug,使magento面包屑显示为真 而非cookie值 下载后覆盖至:app/code/core/Mage/Catalog/Helper/Data.php 付费magento修改与优化服务请联系 ...
Magento面包屑扩展将面包屑添加到Magento中的页面,默认情况下不包含面包屑。兼容性Magento CE(EE)1.6.x,1.7.x,1.8.x,1.9.x OpenMage LTS 19.x通过Composer安装转到安装文件夹输入以下命令以安装模块: ...
在这个实例中,我们将深入探讨如何在Magento中创建一个显示“Bestseller”产品的自定义页面。 首先,理解Magento的模块化结构至关重要。每个功能或特性在Magento中都对应一个模块,模块是Magento的基本构建单元。...
Magento是一款强大的开源电子商务平台,它的灵活性和可扩展性深受许多在线商家的喜爱。"OneStepCheckout"插件是针对Magento系统设计的一款优化支付流程的插件,旨在提高用户体验,将传统多步骤的结账过程整合为一步...
Magento全页缓存是Magento电子商务平台的一个重要特性,旨在显著提升网站性能,降低服务器负载,同时为用户提供更快的页面加载速度。在Magento中,全页缓存(Full Page Cache,FPC)是一种优化技术,它将整个网页...
### Magento产品不改变缺货状态的原因分析及解决办法 #### 一、问题概述 Magento是一款功能强大的电子商务平台,被广泛应用于各种规模的企业中。但在实际使用过程中,有时会出现产品的库存状态无法正确显示的问题,...
在这个特定的场景中,我们关注的是一个名为“magento产品详细页每日特价倒计时插件”。这个插件是专门为Magento商店设计的,旨在提升销售策略,通过在产品详细页面上显示每日特价商品的倒计时,刺激消费者的购买欲望...
在管理Magento商店的产品时,有时我们需要批量修改产品名称和描述,以便于统一品牌风格、优化SEO或更新产品信息。传统的后台操作对于大量产品来说效率较低,这时我们可以通过编写SQL语句来实现批量修改,以提高工作...
Magento企业版全页缓存是该电子商务平台性能优化的关键组件,尤其对于处理高流量和大量商品的在线商店而言,它的作用不可忽视。全页缓存(Full Page Cache, FPC)能够显著提升网站的加载速度,提高用户体验,降低...
在Magento1中,产品预览功能是提升用户体验的关键部分,它允许用户在不实际进入产品详情页面的情况下预览产品的图片。这样的设计可以提高网站的交互性和用户满意度,因为他们能够快速浏览商品,决定是否需要进一步...
Magento是一款强大的开源电子商务平台,它的灵活性和可扩展性使得开发者能够根据需求定制各种功能。在电商网站中,图片是至关重要的元素,它们可以展示产品细节,吸引顾客注意力。然而,大量的图片也会对网站性能...
### Magento站点首页显示新产品及产品数量 在Magento中,首页是吸引客户的第一界面,因此如何有效地展示新产品及其数量显得尤为重要。本文将详细介绍如何在Magento站点的首页上展示新产品及其数量,并提供具体的...
### Magento通过产品名称获取产品ID的实现原理 在Magento中,每一件商品都有一个唯一的ID,这个ID是用于系统内部识别商品的主要依据。然而,在实际操作中,我们可能只知道产品的名称,而不知道其ID。这时,就需要...
Magento全页缓存是电商网站性能优化的重要工具,它能够显著提升页面加载速度,从而改善用户体验,降低服务器负载。在Magento平台中,全页缓存是通过插件实现的,如"brim_pagecache-2.1.3",这款插件特别针对Magento ...
在Magento中,一页支付(One Page Checkout)是一种优化购物流程的插件,旨在提高用户体验,通过将整个结账过程整合到单个页面上,减少用户在购物车到完成订单之间的点击次数,从而提升转化率。 一、Magento 一页...
如何给产品描述里的关键字、字词批量添加链接?我想大家一直在的这样的插件。说实话,我也找了很久,也没有找到。可是由于需要,不得不自己开发一个这样的插件。并支持到Magento1.6.2 说明请查看:...
"Magento批量产品多图上传"是针对Magento系统的一个功能模块,主要解决了在Magento 1.7版本中一次性上传多个产品图片的问题,极大地提高了产品管理效率。 在默认情况下,Magento允许用户为每个产品添加多张图片,但...
这篇博客“Magento:后台添加预览按钮 View product in frontend from Magento admin”主要探讨了如何通过自定义开发来实现这一功能,让管理员能够快速检查商品在网站前台的显示状态。 在Magento中,通常管理员需要...
本书详细介绍了各种类型的产品(如简单产品、可配置产品、捆绑产品、分组产品、虚拟产品和可下载产品)的处理方法。除此之外,还包括了如何在产品页面上添加社交媒体按钮、嵌入HTML对象等更高级的技术。 在主题开发...
在电子商务领域,Magento是一款广泛应用的开源电子商务平台,它允许商家管理他们的在线商店,包括产品、订单、客户等信息。在日常运营中,有时我们需要对数据进行批量操作,比如批量导出产品及其自定义属性,以便...