我想创建一个可以被所有* .phtml文件访问的函数。我应该在magento框架中将此函数放在哪里?
答案 0 :(得分:6)
对于羽绒和脏东西,你总是可以在index.php中定义它。例如,我总是把这个功能放在那里:
function dumpit($obj)
{
print '<pre>';
print_r($obj);
print '</pre>';
}
然后,您可以从任何地方快速调用此例程,而无需记住所有其他开销函数名称以获取帮助程序。
答案 1 :(得分:5)
您应该在该模块中创建一个模块和一个帮助器类(默认情况下通常为MyCompany_Mymodule_Helper_Data
)。然后,将您的函数添加到该帮助程序类。您可以在PHTML中使用以下功能:
Mage::helper("mymodule")->someFunction();
希望有所帮助!
谢谢, 乔
答案 2 :(得分:2)
C:\wamp\www\mydirectory\app\code\core\Mage\Page\Helper\Data.php
是我的道路。我使用print_r
函数作为pr()
函数。
将其放入Data.php
,如下所示。
class Mage_Page_Helper_Data extends Mage_Core_Helper_Abstract
{
function pr($data)
{
echo "<pre>";
print_r($data);
echo "</pre>";
}
}
其中page是mymodule。
使用
从任何.phtml文件中调用它Mage::helper("page")->pr($abcd);
希望它有所帮助。
答案 3 :(得分:1)
对于任何有兴趣的人,我总结了一个关于如何在Magento中创建全局函数的简短教程:http://joe-riggs.com/blog/2011/06/create-global-function-in-magento/
答案 4 :(得分:0)
我只是不能被Magento模块和块的过度噩梦所淹没,所以我之前使用了@Billy提供的答案,因为它很简单,几乎没有参与。
不幸的是,该解决方案似乎无法在本地服务器环境中运行。经过一番研究后,我发现我可以将全局函数放在这里:
.../app/code/local/Mage/Core/functions.php
最后,我读过this isn't exactly upgrade-proof,但它对我有用。