Magento - 自定义模块添加第2页

时间:2014-06-12 12:11:34

标签: php magento

我已经为此工作了好几天了,我已经为Magento创建了一个自定义模块,可以使用本指南添加客户帐户页面 - http://alanstorm.com/magento_create_customer_page

所以我得到了www.mydomain.com/portfolio,它指向我的布局文件中带有此代码的自定义模块:

<portfolio_index_index>
            <update handle="customer_account" />
            <reference name="root">
                    <action method="setTemplate"><template>page/1column.phtml</template></action>
            </reference>
            <reference name="my.account.wrapper">
                <block type="core/template" name="cadaptor_portfolio_content" template="cadaptor_portfolio.phtml"/>           
            </reference>
</portfolio_index_index>

我现在正试图在www.mydomain.com/portfolio/add上添加第二页到模块,或类似的实际网址并不重要。

所以我把它添加到布局文件中:

<action method="addLink">
    <name>portfolio_add</name>
    <path>portfolio/add</path>
    <label>Add To Your Portfolio</label>
</action>

工作正常...链接出现在菜单&amp;去它应该去的地方。

还补充道:

<portfolio_add>
            <update handle="customer_account" />
            <reference name="root">
                    <action method="setTemplate"><template>page/1column.phtml</template></action>
            </reference>
            <reference name="my.account.wrapper">
                <block type="core/template" name="cadaptor_portfolio_add" template="cadaptor_portfolio_add.phtml"/>           
            </reference>
</portfolio_add>

我已经创建并上传了_add模板文件但除了404错误之外什么也得不到,如果有人能给我一个正确方向的推动,我将非常感激。

1 个答案:

答案 0 :(得分:1)

首先,添加页面的布局句柄应为portfolio_index_add而不是portfolio_add 并在IndexController.php中添加以下方法:

public function addAction()
{
    $this->loadLayout();
    $this->renderLayout();
}

并且您的路径应为“portfolio / index / add”