如何绕过toHtml()在Magento中打印html标签

时间:2015-06-01 23:14:10

标签: php html magento

首先让我承认,我不是程序员,虽然我在这里和那里调整了一小部分PHP有很多的表现。 我也不熟悉Magento的编码方式。

我有这个客户想要将制造商的品牌名称添加到面包屑中,并在其中添加品牌名称的链接。我们正在使用分层导航,这是我从中获取链接的地方。

我得到的输出是Home / Categoryname / productname of< A href =" http://linktobrand.html"> Brandname< / A> 在这里html没有被渲染,因为面包屑块被函数toHtml()回显。

无论如何我可以绕过这个吗?

这是我的代码:(代码放在产品的view.phtml中)

//Get current category url
$current_category = Mage::registry('current_category')->getUrl();

//Get brandname
$brandname = Mage::getModel('catalog/product')->load($_product->getId())->getAttributeText('manufacturer');

//Strip .html and add the stuff from the layered navigation to it
$brandurl = str_replace(".html", "/l/". strtolower($brandname) .".html", $current_category);    
$brandnamemurl = "of <a href="" . $brandurl . "">" . $brandname . "</a>";

//breadcrumb stuff
$breadcrumbs = $this->getLayout()->getBlock('breadcrumbs');
$breadcrumbs->addCrumb('manufacturer', array('label'=>$brandnamemurl, 'title'=>$brandname));
echo $this->getLayout()->getBlock('breadcrumbs')->toHtml(); 

http://pastebin.com/csueRX6T

1 个答案:

答案 0 :(得分:2)

html_entity_decode成功了!

//I Added these two lines
$breadcrumbblock = $this->getLayout()->getBlock('breadcrumbs')->toHtml();  
echo html_entity_decode($breadcrumbblock);