如何调用另一个块Magento的功能

时间:2013-05-01 05:41:28

标签: magento

我正在尝试更改联系我们链接的参考块..我创建了所有的phtml文件和所有.. 现在我在Phtml文件中打电话

<?php $_links = $this->getLinks(); ?> 

我的链接数量为0 ..因为它无法获得links.php的对象.. 我想知道怎样才能有contacts.phtml的参考对象

4 个答案:

答案 0 :(得分:35)

您好,您可以通过创建对Block.Like

的引用来实现
 $cpBlock = $this->getLayout()->getBlockSingleton('your block class'); //ect Mage_Catalog_Block_Product_List_Toolbar

您可以轻松地调用该类的每个函数,例如$cpBlock->getLinks();。其他方式是使用XML块代码。添加联系我们xml引用就像提到的自定义xml中的user2338443一样,而不是访问该块的函数。< / p>

答案 1 :(得分:4)

阻止阻止呼叫

还尝试从当前模板块类调用其他块类方法。

$s = Mage::app()->getLayout()->getBlockSingleton('myproductfamily/family');
        print_r($s->getCollection($collectionId));exit;

其中:myproductfamily = ModuleName

family = blockClass

答案 2 :(得分:2)

您可以使用布局XML文件进行引用。

例如:

<block type="{Here you can add reference}" name="contactForm" template="contacts/form.phtml"/>

答案 3 :(得分:2)

请试试这个。 调用块方法/函数有两种语法,如下所示。

$_blockData = $this->getLayout()->getBlockSingleton('yourmodule/blockname')->getFunctionName();

$_blockData = $this->getLayout()->createBlock('yourmodule/blockname')->getFunctionName();