通过布局XML文件将助手类传递给参数

时间:2013-02-12 23:57:26

标签: magento magento-1.7 magento-layout-xml

我有一个工作链接被添加到 top.links 块,如下所示:

<block type="page/template_links" name="top.links" as="topLinks">
    <action method="addLink">
        <label>About Us</label>
        <url helper="mymodule/getAboutUsUrl"/>
        <title>About Us</title>
        <prepare/>
        <urlParams/>
        <position>20</position>
    </action>
</block>

最终我想让 getAboutUsUrl 变成 getExternalSiteUrl 。我想要一个函数来获取参数。例如, getExternalSiteUrl('about-us')然后返回/ / url / about-us之类的东西。但是,我似乎找不到在Layout XML文件中发送辅助类参数的方法。我已经搜索了其他模块,并且在我搜索的Customer模块中找不到。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:7)

<block type="page/template_links" name="top.links" as="topLinks">
    <action method="addLink">
        <label>About Us</label>
        <url helper="mymodule/getAboutUsUrl">
            <arg>Now with more args!</arg>
            <!-- will result in the string being passed as first arg -->
        </url>
        <title>About Us</title>
        <prepare/>
        <urlParams/>
        <position>20</position>
    </action>
</block>

请注意,帮助程序不会扩展Varien_Object,因此您的方法需要明确定义getAboutUsUrl()方法。