2013-03-14 2 views
0

Я создал новый модуль для замены меню пользователя/учетной записи и имеет ссылку www.mysite.com/accountMagento пользовательских URL

теперь я хочу, чтобы изменить имя пользователя, регистрацию и другие страницы, чтобы показать, как www.mysite.com/account/login и т.д.

вместо возвращаясь назад к клиенту/счета/входа в систему и т.д.

Что лучший способ сделать это?

Вот config.xml код Ive сделано до сих пор ....

<?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> 
+0

Magento использует следующий std-формат url: site.com/modulename/controller/action, если вы хотите использовать другой формат URL-адреса, затем попробуйте переписать magento или использовать некоторые правила .htaccess. – oscprofessionals

ответ

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 
} 

Я надеюсь, что это правильно, сообщите мне, если бы не было ясно. Мир.

+0

Спасибо. Я изменил свой код, но теперь все, что я get - ошибка 404 Вместо Account Controller.php я использовал IndexController.php раньше и загружал новый макет, но теперь, когда вы изменяете код выше, ничего не работает –

Смежные вопросы