Nat*_*ndt 3 php enterprise magento mage
我在模板文件中price.phtml
.我想有一些代码行查看调用块的父代,并根据它做一些行为.基本上,如果父项是目录列表页面,我希望将from:
标记添加到价格中.如果父母是configurable.phtml
,我想简单地显示价格.
我已经有代码添加from:
到价格但我需要if语句来告诉父调用者是什么.
::parent
在仔细阅读Mage文件时,我曾见过类似的东西,但我不知道这是否适用于此......
谢谢!
Ala*_*orm 14
你可以通过调用从phtml中获取对块的父块的引用
$parent = $this->getParentBlock();
Run Code Online (Sandbox Code Playgroud)
调用parent::someMethod
与块或Magento无关.它们是PHP构造,用于表示您想要在父类上调用方法.
这里有一堆方法可以帮助您了解您在Magento中可视化的页面类型:
Mage::getSingleton('cms/page')->getIdentifier();
Mage::app()->getFrontController()->getRequest()->getRouteName();
Mage::app()->getFrontController()->getRequest()->getControllerName();
Mage::app()->getFrontController()->getRequest()->getActionName();
因此,例如,如果您想了解您在目录列表页面中,您可以使用最后三个来检查路由是否为目录,控制器是类别,操作是否为视图.
另一种方法将包括在检查一个存在catalog_category_view 布局手柄当前布局的阵列中的处理,你可以在从块或模板通过以下方式获取:$this->getLayout()->getUpdate()->getHandles()
希望能帮助到你.
此致,亚历山德罗
归档时间: |
|
查看次数: |
10278 次 |
最近记录: |