パーツモジュールを使用する[要PHP]
サイトを構築する際、ヘッダやフッタと全画面共通の箇所があります。
ヘッダのデザインのみを急遽変えたいと思ったとき、
同じ変更を全ページに反映させなければなりません。
パーツモジュールを利用すれば、
サイトの共通部分をまとめて管理できるようになります。
今回はヘッダのパーツモジュールに焦点を絞って説明していきます。
ヘッダーの箇所にパーツモジュールを設置するとします。
まずはテンプレートからヘッダーの部分を探し出し
<div id="headbody">
<h2>お豆商事種式会社</h2>
<p><a href="カートのURL">カートの中を見る</a></p>
</div><!--END #headbody -->
ここをヘッダのパーツモジュールで囲みます。
<div id="headbody">
<!-- shop:module="common.parts.header" -->
<h2>お豆商事種式会社</h2>
<p><a href="カートのURL">カートの中を見る</a></p>
<!-- /shop:module="common.parts.header" -->
</div><!--END #headbody -->
<!-- shop:module="common.parts.header" -->で囲まれた部分が無視され、
/soyshop/webapp/src/module/site/common/parts/にあるheader.phpの記述内容が反映されるようになりました。
header.phpを開くと
<?php
function soyshop_parts_header(){
$site = soyshop_get_site_url();
$cart = soyshop_get_cart_url();
echo <<<HTML
<h2>お豆商事種式会社</h2>
<p><a href="カートのURL">カートの中を見る</a></p>
HTML;
}
?>
(ディフォルトでは、imgタグが入っていますが、今回は省略します)
このスクリプトで
echo <<<HTML
HTML;
という箇所があります。
このHTMLで挟まれた箇所がモジュールを設置した箇所に表示されます。
<!-- shop:module="common.parts.header" -->をすべてのテンプレートに記述したら、
header.phpのecho <<<HTML内を変更するだけで全ページのヘッダが一括修正出来るようになります。
補足
パーツモジュール一覧
アドレス | <!-- shop:module="common.parts.address" --> |
---|---|
フッター | <!-- shop:module="common.parts.footer" --> |
グローバルナビ | <!-- shop:module="common.parts.global_navigation" --> |
ヘッダーナビ | <!-- shop:module="common.parts.header_navigation" --> |
ヘッダー | <!-- shop:module="common.parts.header" --> |
パーツモジュールについての情報はこちらをご覧下さい