0

我创建了一个新模块来替换客户/帐户菜单并有一个链接 www.mysite.com/account

我现在想将登录、注册和其他页面更改为 www.mysite.com/account/login 等

而不是恢复到客户/帐户/登录等

最好的方法是什么?

这是迄今为止我制作的 config.xml 代码....

<?xml version="1.0"?>
<config>
  <modules>
    <SquareNetMedia_MyAccount>
      <version>0.1.0</version>
    </SquareNetMedia_MyAccount>
  </modules>
  <frontend>
    <routers>
      <myaccount>
        <use>standard</use>
          <args>
            <module>SquareNetMedia_MyAccount</module>
            <frontName>account</frontName>
          </args>
      </myaccount>
    </routers>
        <layout>
          <updates>
            <myaccount>
              <file>myaccount.xml</file>
            </myaccount>
          </updates>
        </layout>
  </frontend>
  <global>

    <helpers>
      <myaccount>
        <class>SquareNetMedia_MyAccount_Helper</class>
      </myaccount>
    </helpers>
    <blocks>
      <myaccount>
        <class>SquareNetMedia_MyAccount_Block</class>
      </myaccount>
    </blocks>
  </global>
</config> 
4

1 回答 1

0

将您的文件更改为如下所示:

 <frontend>
 <routers>
 <myaccount>
    <use>standard</use>
      <args>
        <module>SquareNetMedia_MyAccount</module>
        <frontName>account</frontName>
      </args>
  </myaccount>
  <customer>
    <args>
      <modules>
        <SquareNetMedia_MyAccount before="Mage_Customer_AccountController">SquareNetMedia_MyAccountr</SquareNetMedia_MyAccount>
      </modules>
    </args>
  </customer>

然后在模块的控制器文件夹中创建一个名为 AccountController.php 的新控制器文件

<?php
require_once Mage::getModuleDir('controllers','Mage_Customer').DS.'AccountController.php';
class SquareNetMedia_MyAccount_AccountController extends Mage_Customer_AccountController{
}

现在您可以覆盖这些功能

 public function loginAction(){
 #Here you can do what you need I think
 }

我希望这是对的,如果不清楚,请告诉我。和平。

于 2013-03-14T21:16:12.400 回答