我在哪里可以在magento中声明我的自定义函数

时间:2011-10-10 09:01:01

标签: model-view-controller magento

我想声明一些php函数,我想在magento中的各个地方调用这些函数。通常在我的核心php项目中,我在functions.php中声明php函数,我在所有页面中包含该文件.I我不熟悉MVC结构。所以我可以在哪里声明这些功能。

由于

编辑: -

Mango_Myfunc.xml (app / etc / modules)

<?xml version="1.0"?>
<config>
    <modules>
        <Mango_Myfunc>
            <active>true</active>
            <codePool>local</codePool>
        </Mango_Myfunc>
    </modules>
</config>

的Config.xml (应用程序/代码/本地/芒果/ MYFUNC的/ etc / configure.xml)

<?xml version="1.0"?>
<config>
    <modules>
        <Mango_Myfunc>
            <version>0.1.0</version>
        </Mango_Myfunc>
    </modules>
    <global>
        <helpers>
            <Myfunc>
                <class>Mango_Myfunc_Helper</class>
            </Myfunc>
        </helpers>
    </global>
</config>

Data.php (应用程序/代码/本地/芒果/ MYFUNC /辅助/ Data.php)

class Mango_Myfunc_Helper_Data extends Mage_Core_Helper_Abstract
{

public function short_str ($str, $len, $suf = '...') {
    if (strlen($str) > $len)
        return substr($str, 0, $len - strlen($suf) ) . $suf;

    return $str;
}

}

这就是我添加的内容

我使用下面一个来调用list.phtml中的函数

echo $this->helper('Myfunc/Data')->short_str("test","3"); got the error

致命错误:找不到“Mage_Myfunc_Helper_Data”类

1 个答案:

答案 0 :(得分:6)

Magento有这些方法的助手类。所以,制作你的扩展并添加你的方法,然后你可以像以下那样调用它们

Mage::helper('yourextension/yourhelper')->yourMethod(); 

或者您可以使用常用方法创建库类。