2

私はマジェント設定システムと混同しています。etc ディレクトリには、config.xml、system.xml、adminhtml.xml などの構成ファイルがいくつかあります。なぜmagentoには複数の設定ファイルがあるのですか? また、管理セクションにいくつかのフィールドを追加する必要がある場合は、次のような php コードを使用しました。

$fieldset->addField('uploaded_file', 'fileuploader', array(
        'label' => Mage::helper('fileuploader')->__('File'),
        'class' => 'required-entry',
        'required' => true,
        'name' => 'uploaded_file',
));

そして、次のようなxml構成を使用した場所

<sender translate="label comment">
<label>Sender</label>
<comment>Name of the sender</comment>
<validate>required-entry</validate>
<frontend_type>text</frontend_type>                                 
<sort_order>10</sort_order>                         
<show_in_default>1</show_in_default>                        
<show_in_website>1</show_in_website>                            
<show_in_store>1</show_in_store>
</sender>

フィールドセクションで。

すべての領域で共通の構成 php orelse xml を使用しないのはなぜですか? どなたか説明してください。

4

2 に答える 2

1

Mangento は、必要なすべての構成ファイルを 1 つの大きな構成ファイルにマージし、これを構成キャッシュに保存します。

ここで、構成ファイルが 1 つしかない場合、magento は現在の領域 (フロントエンド、管理者、API) では必要のない構成データを強制的にロードし、magento の速度が低下します。

config.xml のみが常にロードされ、他のすべての config *.xml ファイルはオンデマンドでロードされます。

たとえば、フロントエンドでは、バックエンドで使用されるデータのみが含まれているため、system.xml または adminhtml.xml をロードする必要はありません。

さらに、各構成ファイルの目的がわかれば、必要なものを簡単に見つけることができます。

2番目の質問については、system->configurationの下のsystem.xmlに保存されているシステム構成と、個々のモジュールによって作成された管理ページについて言及していると思います。

xml フィールドのフィールド構成を使用すると、構成変数を設定する入力フィールドを作成できます。これはさまざまな基本プロセスであり、変更するスペースがあまりないため、xml を介して構成できます。

ファイルのアップロードの例のように、個々のモジュールの場合、すでにより複雑になっています。ファイルのアップロード、保存場所、許可されているファイルの種類、最大サイズはありますか、他のチェックを行うか、ファイル名をデータベースに保存する必要があるかどうかなど、すべての可能性を考慮してください。より明確にするために、「製品の編集」の管理ページを定義するために必要な xml を想像してみてください。

このトピックについて詳しく知りたい場合: http://alanstorm.com/magento_config_tutorialこれは良いスタートです

于 2013-09-22T08:49:17.130 に答える
1

Magento はモジュール式であるため、各モジュールには構成があります。

したがって、各モジュールには、etc/1 つ以上の xml ファイルを含むフォルダーがあります。

次に、にあるデータベースにアクセスするためのシステム設定があります。app/etc/

さらに、さまざまな機能を微調整したり、完全に変更したり、抑制したりするために使用できるlocal.xmlファイルをテンプレートフォルダーに置くことができます。layout/

すべての領域を使用app/code/coreすると、すべての変更が上書きされるため、最初の Magento バージョンのアップグレードは非常にユーモラスになります。app/code/core/そのため、コアまたはapp/code/local/Mageモジュールetcフォルダーにある構成を上書きするために、作成したカスタム モジュールにあるモジュールへの構成変更を保持することをお勧めします。

于 2013-09-22T00:16:35.453 に答える