のXMLベースの構造Magentoのは
<adminhtml_example_index></adminhtml_example_index>
...始まりますが、そのよく知られている最終的には強力な機能とカスタマイズ性で少し混乱と迷惑なようです
このタグは、[router] [c [コントローラ] [対応] ルータは、特定のディスパッチの一意に識別された名前です。指定した例では、config.xmlファイルのadminタグの下に、ルータ名adminhtml
があります。
<admin>
<routers>
<adminhtml>
<args>
<modules>
<awesome before="Mage_Adminhtml">Super_Awesome_Adminhtml</awesome>
</modules>
</args>
</adminhtml>
</routers>
</admin>
このルータには、このルータに関連するモジュール設定があります。
URLが/管理/例/ [インデックス]が含まれているのであれば、Magentoのは<adminhtml>
で正しいルータは、その後example
という名前のコントローラを見つけて、この場合にはindex
ある正しい行動を見つけるでしょう(/管理/例/ ルータコントローラのアクション組み合わせについて、レイアウトファイルで
<adminhtml_example_index>
<reference name="content">
<block type="awesome/adminhtml_example" name="example" />
</reference>
</adminhtml_example_index>
)デフォルト・インデックス・アクションにディスパッチされ、レイアウトの更新が定義されています。ここでは、ページコンテンツセクションを保持するcontent
という名前のメインブロックに更新が適用されます。
<block>
タグは、参照する必要があるブロックを定義するために使用されます。 <type>
タグは重要です。それは、ここにawesome/adminhtml_example
で
(ViewはブロッククラスとPHTMLファイルの両方で構成されていMagentoののMVC構造に覚えておいてください)このレイアウトをレンダリングするときに使用する必要があり、正しいブロッククラスを参照awesome
はで述べたブロック構成名ですconfig.xmlファイル。 adminhtml_example
は、使用するブロッククラスです。
は、一意のブロック名が(良い命名規則は、一意性を保持します)に定義され、block
タグの下
<global>
-----
<blocks>
<awesome>
<class>Super_Awesome_Block</class>
</awesome>
</blocks>
</global>
を参照してください。次に、これらのブロックのクラスパスはSuper/Awsome/Block/
と識別できます。 ブロック構成名が解決されるようになりました。 adminhtml_example
は、使用される正確なブロッククラスです。ブロック名(素晴らしい)の後のアンダースコアは、ディレクトリセパレータに変換されます。
それによると、ブロッククラスの完全なパスは、我々はここでそれを指定することができ、レイアウトファイルがある場合は、クラス名が
class Super_Awesome_Block_Adminhtml_Example extends ….
のようになります
[codepool]/Super/Awsome/Block/Adminhtml/Example.php
になります。..次いで.phtml
ファイルが前記ブロック・クラス
<reference name="root">
<block type="page/html" name="root" template="simplepage.phtml" />
</reference>
ホープ番目を使用してレンダリングされること何か不明な点がございましたら申し訳ございません...
説明は抜群です。がんばり続ける。 :) – Coder