如何将新页面添加到客户帐户仪表板?

问题描述:

我编辑了customer.xml文件,为仪表板页面添加一个新链接。我加了下面的行如何将新页面添加到客户帐户仪表板?

<action method="addLink" translate="label" module="customer"><name>newpage</name><path>customer/newpage/</path><label>My New Page</label></action> 

我还添加了以下块customer.xml

<customer_newpage_index translate="label"> 
    <label>Customer My newpage</label> 
    <!-- Mage_Customer --> 
    <update handle="newpage"/> 
    <reference name="my.account.wrapper"> 
     <block type="customer/newpage" name="newpage" before="-" template="customer/newpage.phtml"/> 
    </reference> 
</customer_newpage_index> 

而在模板/客户/ newpage.phtml

链接添加模板文件显示,但当我查看/ customer/newpage/

我在这里丢失了什么?

感谢

+2

- 单个*答案的时间太长,但我只是**在新的Magento教程中详细介绍了这一点:http://alanstorm.com/magento_create_customer_page可能会引起您的兴趣。 –

您需要添加一个名为NewpageController.php控制器和它有一个动作叫indexAction。在Customer模块内部添加此控制器可能不是一个好主意,因为这是core,而我们从来没有 touch core。相反,你可能想要做的是创建你自己的模块,并把控制器放在里面。它仍然可以作为链接之一添加到边栏中,就像你已经完成的一样,但是从外部添加,这样当你升级Magento时,你不会失去你的控制器。

+0

谢谢,这有点让我朝着正确的方向前进。我不得不在我的customer.xml文件中保留链接,因为当我试图在我的新模块中添加链接时,我得到了一个失踪的帮助错误。不确定为什么我需要助手类? 或者,我可以建立一个CMS页面并包含客户帐户导航块吗? – CharlesRock

+0

也许 - 我从来没有尝试过。如果您编辑CMS页面的布局xml,您可能可以实现此目的。 – Max