Magento–为页面添加面包屑(breadcrumb)

2,213 人次阅读
没有评论

共计 1172 个字符,预计需要花费 3 分钟才能阅读完成。

1. 为前端页面添加面包屑
基本步骤类似大象装冰箱:在controller文件中填充面包屑数据,在block的phtml文件中显示

1). 在controller的Action方法中

Php代码:

//判断是否存在名字为breadcrumbs的Block(默认都存在,后面有说明)
if ($breadcrumbsBlock = $this->getLayout()->getBlock(‘breadcrumbs’)) {
// 该条目有目标链接地址
$breadcrumbsBlock->addCrumb(‘category’, array(
‘label’ => ‘Category’,
‘title’ => ‘Category Title’,
‘link’ => ‘http://www.google.com’,
‘readonly’ => true,
));
// 该条目没有链接地址,一般作为最后一个条目
$breadcrumbsBlock->addCrumb(‘product’, array(‘label’ => Mage::helper(‘catalog’)->__(‘Product’)));
}
//判断是否存在名字为breadcrumbs的Block(默认都存在,后面有说明)
if ($breadcrumbsBlock = $this->getLayout()->getBlock(‘breadcrumbs’)) {
// 该条目有目标链接地址
$breadcrumbsBlock->addCrumb(‘category’, array(
‘label’ => ‘Category’,
‘title’ => ‘Category Title’,
‘link’ => ‘http://www.google.com’,
‘readonly’ => true,
));
// 该条目没有链接地址,一般作为最后一个条目
$breadcrumbsBlock->addCrumb(‘product’, array(‘label’ => Mage::helper(‘catalog’)->__(‘Product’)));
}

2). 在该action对应的Layout文件中添加Block

Xml代码:
相应的在你的Block的合适位置输出面包屑

Php代码:

getChildHtml(‘breadcrumbs’); ?>
getChildHtml(‘breadcrumbs’); ?>以上描述的是面包屑的一般原理,Magento实际上已经默认声明了Block

Xml代码:
而且默认的几个layout模板文件(page/1column.phtml,page/2columns-left.phtml..等)已经做了

Php代码:

getChildHtml(‘breadcrumbs’); ?>
getChildHtml(‘breadcrumbs’); ?>

所以实际上,你只需要完成第一步就大功告成了。

正文完
 0