magentoテンプレートにおけるXMLとphtmlの関係[三]
13986 ワード
今回は引き続きmagentoテンプレート作成の検討を行い、前回.xmlでは.phtmlではできないことができると言いました.今日はxmlとphtmlがどのように協力して私たちのmagentoテンプレートを生成したのかについて話します.
今回の説明では、magento 1.4バージョンを使用し、baseのdefaultテンプレートを使用します.
例は最も迅速にmagentoを理解する方法で、magentoの頭部の検索ボックスを見て、どのように表示されているかを見てみましょう.
宣言定義:appdesignfrontendbasedefaultlayoutcatalogsearch.xml
次に、appdesignfrontendbasedefaulttemplatepagehtmlheader.phtmlで出力を呼び出します.
XMLにはコードフラグメントas="topSearch"があり、phtmlのgetChildHtml()のパラメータがtopSearchなので、これがキーです.
この検索をテンプレートのヘッダからテンプレートの下部に移動するにはどうすればいいですか?
では、まず上のXMLのをに変更し、
次にappdesignfrontendbasedefaulttemplatepagehtmlheader.phtmlのgetChildHtml(‘topSearch’) ?>削除:appdesignfrontendbasedefaulttemplatepagehtmlfooter.phtmlの適切な場所に追加します.
この時私たちは
対応はappdesignfrontendbasedefaulttemplatepagehtmlheader.phtmlファイル
対応はappdesignfrontendbasedefaulttemplatepagehtmlfooter.phtml
どうしてですか.
appdesignfrontendbasedefaultlayoutpage.xmlファイルの定義footerとheaderのコードクリップを見てみましょう
この最初の行のコードを見ると、name=「footer」、template=「page/html/footer.phtml」とはっきり言っています.だからこのは
footer.phtmのgetChildHtml()を定義します.
初心者なら、ここまで読んでもわからないので大丈夫です.私が見始めても目がくらむので、私たちはプロではありません.普通です.しかし、私たちは猫の虎を描くのが上手で、法則をまとめなければなりません.
私たちは分からないかもしれませんが、私たちは使います.これは良いスタートで、もっと練習します.だんだん何でもわかってきた.
今回の説明では、magento 1.4バージョンを使用し、baseのdefaultテンプレートを使用します.
例は最も迅速にmagentoを理解する方法で、magentoの頭部の検索ボックスを見て、どのように表示されているかを見てみましょう.
宣言定義:appdesignfrontendbasedefaultlayoutcatalogsearch.xml
1
<
default
>
2
<
reference name
=
"
header
"
>
3
<
block type
=
"
core/template
"
name
=
"
top.search
"
as
=
"
topSearch
"
template
=
"
catalogsearch/form.mini.phtml
"
/>
4
</
reference
>
次に、appdesignfrontendbasedefaulttemplatepagehtmlheader.phtmlで出力を呼び出します.
1
<
div
class
=
"
quick-access
"
>
2
<?
php
echo
$this
->
getChildHtml(
'
topSearch
'
)
?>
XMLにはコードフラグメントas="topSearch"があり、phtmlのgetChildHtml()のパラメータがtopSearchなので、これがキーです.
この検索をテンプレートのヘッダからテンプレートの下部に移動するにはどうすればいいですか?
では、まず上のXMLの
次にappdesignfrontendbasedefaulttemplatepagehtmlheader.phtmlのgetChildHtml(‘topSearch’) ?>削除:appdesignfrontendbasedefaulttemplatepagehtmlfooter.phtmlの適切な場所に追加します.
この時私たちは
どうしてですか.
appdesignfrontendbasedefaultlayoutpage.xmlファイルの定義footerとheaderのコードクリップを見てみましょう
1
<
block type
=
"
page/html_footer
"
name
=
"
footer
"
as
=
"
footer
"
template
=
"
page/html/footer.phtml
"
>
2
<
block type
=
"
page/html_wrapper
"
name
=
"
bottom.container
"
as
=
"
bottomContainer
"
translate
=
"
label
"
>
3
<
label
>
Page Footer
</
label
>
4
<
action method
=
"
setElementClass
"
>
5
<
value
>
bottom
-
container
</
value
>
6
</
action
>
7
</
block
>
8
<
block type
=
"
page/switch
"
name
=
"
store_switcher
"
as
=
"
store_switcher
"
template
=
"
page/switch/stores.phtml
"
/>
9
<
block type
=
"
page/template_links
"
name
=
"
footer_links
"
as
=
"
footer_links
"
template
=
"
page/template/links.phtml
"
/>
10
</
block
>
この最初の行のコードを見ると、name=「footer」、template=「page/html/footer.phtml」とはっきり言っています.だからこの
footer.phtmのgetChildHtml()を定義します.
初心者なら、ここまで読んでもわからないので大丈夫です.私が見始めても目がくらむので、私たちはプロではありません.普通です.しかし、私たちは猫の虎を描くのが上手で、法則をまとめなければなりません.
私たちは分からないかもしれませんが、私たちは使います.これは良いスタートで、もっと練習します.だんだん何でもわかってきた.