0

「コア」のファイル構造のように「ローカル」構造でファイルを作成すると、Magento はその変更を認識しません。なんで?他のファイルを変更する必要があるのでしょうか?を変更core/Mage/Cutomer/controllers/AcountController.phpし、変更したファイルを に入れましlocal/Mage/Cutomer/controllers/AcountController.phpたが、効果がありませんでした。

Magento は「コア」ファイルで動作します。

4

3 に答える 3

0

個人的には、カスタムモジュールを作成する方が良い方法だと思います。これは、「ModuleName」を説明として使用して、このモジュールがコアにどのような変更を加えるかを示し、他の開発者がコードを変更するのをはるかに簡単にすることができるためです。未来

app / code / local / MageIgniter / ModuleName / controllers / AcountController.php

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

   }

app / code / local / MageIgniter / ModuleName / etc / config.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
  <MageIgniter_ModuleName>
    <version>0.0.1</version>
  </MageIgniter_ModuleName>
</modules>
<frontend>
  <routers>
    <customer>
      <args>
        <modules>
          <MageIgniter_ModuleName before="Mage_Customer">MageIgniter_ModuleName</MageIgniter_ModuleName>
        </modules>
      </args>
    </customer>
  </routers>
</frontend>
</config>

/app/etc/modules/MageIgniter_ModuleName.xml

<config>
    <modules>
        <MageIgniter_ModuleName>
            <active>true</active>
            <codePool>local</codePool>
        </MageIgniter_ModuleName>
    </modules>
</config> 

続きを読む @

Magentoコアコントローラーを拡張する方法は?

Magento:コアファイル(ブロック、モデル、リソース、コントローラー)のオーバーライド

于 2012-11-23T12:24:58.890 に答える
-1

独自のモジュールを作成し、magento ロジックにフックするオブザーバーを記述します。

于 2012-11-23T08:58:48.777 に答える
-1

マジェントはコードプールを「コア」として取っていると思います。そのため、コアダイレクトでそのクラスを見つけ始めます。

したがって、ファイル app -> etc -> modules -> Mage_All.xml を変更して、次のように codepool を変更し、

   <Mage_Customer>
         <active>true</active>
        <codePool>local</codePool>
        <depends>
            <Mage_Eav/>
            <Mage_Dataflow/>
            <Mage_Directory/>
        </depends>
    </Mage_Customer>
于 2012-11-23T10:49:54.750 に答える