我正在尝试实现一种布局,其中默认欢迎消息位于搜索框的顶部,后面跟着目录导航,类似于他们拥有的here。
我希望通过local.xml文件执行此操作。到目前为止我有这个:
<?xml version="1.0" ?>
<layout>
<default>
<!-- add the local stylesheet -->
<reference name="head">
<action method="addCss"><stylesheet>css/local.css</stylesheet></action>
</reference>
<reference name="header">
<action method="unsetChild"><alias>topSearch</alias></action>
<action method="insert"><blockName>top.search</blockName><sublingName>catalog.topnav</sublingName><after>1</after></action>
</reference>
</default>
</layout>
我能够取消设置搜索框,但我无法在目录导航之前插入 - 没有任何反应。我也试过这样插入
<reference name="top.nav">
<action method="insert"><blockName>top.search</blockName><sublingName>catalog.topnav</sublingName><after>1</after></action>
</reference>
但它仍然无效。我能在这里做错什么?
我在这里真的很困惑,这种方法可以吗?我检查了header.phtml,看到我只需要切换默认欢迎消息和搜索框的行,我就完成了!但我想这意味着我必须复制一份 header.phtml到我自己的主题。这会是一个更好的方法吗?
谢谢!
答案 0 :(得分:1)
为您自己的主题制作header.phtml的副本。正如你所看到的那样它控制着输出的顺序,并且没有任何魔法能够让它发生变化 - 除了用javascript攻击它,但更糟糕的是......
为每个主题设置不同文件夹的目的是准确地允许这种覆盖,因此请使用它。