Magentoのフッターセクションの位置を変更するにはどうすればよいですか?
ページのメインdivにフッターを配置したいと思います。
Magentoでこれを行うにはどうすればよいですか?
なぜこれを実行するのかわかりません。ページ構造を再編成する方がよい場合があります。フッターはフッターであり、実際にはメインコンテンツの一部ではありません。
それでも、これはレイアウトxmlを使用して簡単に実現できます。
編集
使用できる方法は2つあります。
1.ベースレイアウトのオーバーライドにローカルxmlファイルを使用します。-app/design/frontend/your_package/your_theme/layout/local.xml
特定のユースケースに反対する適切な議論がない限り、これは本当にあなたの好ましい方法であるはずです。
<?xml version="1.0"?>
<layout>
<default>
<reference name="root">
<action method="unsetChild">
<alias>footer</alias>
</action>
</reference>
<reference name="content">
<action method="insert">
<alias>footer</alias>
</action>
</reference>
</default>
</layout>
また...
2.ベースレイアウトファイルをコピーします
app/design/frontend/base/default/layout/page.xml
にコピーapp/design/frontend/your_package/yout_theme/layout/page.xml
次のように宣言されているフッターノードを見つけます(手つかずのpage.xml CE 1.7で)。
<block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml">
<block type="page/html_wrapper" name="bottom.container" as="bottomContainer" translate="label">
<label>Page Footer</label>
<action method="setElementClass"><value>bottom-container</value></action>
</block>
<block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
<block type="page/template_links" name="footer_links" as="footer_links" template="page/template/links.phtml"/>
</block>
ルートノードの直接の子孫になります。このノード全体を移動して、メインコンテンツノードの子になります。
<block type="core/text_list" name="content" as="content" translate="label">
<label>Main Content Area</label>
<block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml" after=">
<block type="page/html_wrapper" name="bottom.container" as="bottomContainer" translate="label">
<label>Page Footer</label>
<action method="setElementClass"><value>bottom-container</value></action>
</block>
<block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
<block type="page/template_links" name="footer_links" as="footer_links" template="page/template/links.phtml"/>
</block>
</block>
キャッシュが有効になっている場合は、忘れずに更新してください:)
編集
2番目の方法を使用したブロックポジショニングに関するコメントの質問に答える。before属性とafter属性を使用できます。
すなわち
<block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml" after="your_sibling_block_name">
また、他のレイアウトxmlによっては、兄弟ブロックを編集して、それにbefore属性を追加する必要がある場合もあります。before="footer"