我建立我的第一个自定义的Magento主题。 它的进展缓慢,但它是怎么回事。 我摆脱了原本持有的主页上的迷你搜索表单,而是希望把搜索表单在我的新头了吧。
下面是我在报头中的代码header.phtml
:
<div id="header">
<a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><img src="<?php echo $this->getLogoSrc() ?>" alt="<?php echo $this->getLogoAlt() ?>" /></a>
<div id="header-top">
<?php echo $this->getChildHtml('topSearch') ?>
<?php echo $this->getChildHtml('topLinks') ?>
</div>
<?php echo $this->getChildHtml('topMenu') ?>
</div>
但是,搜索表单不渲染。 这里是有问题的网站:
http://s1.mynewsitereview.com/
非常感谢!
首先,你需要创建或更新您的local.xml文件,如果你没有,你可以创建一个local.xml文件,
APP->前端 - > [包名称] - > [主题名称] - >布局 - > local.xml中
一旦被创建,你可以在这个职位正是我拥有复制到该文件对如何使用一个开始。
DO的所有更新通过local.xml文件,不通过的catalog.xml! 这将使升级后的道路显著容易。 此外,您将能够很快看到你已经在一个文件到您的网站进行的所有更改。
下面的例子将其添加到将适用于所有的网页,但在模板 - > PAGE-> 1column.phtml或2column-left.phtml 3column.phtml等容易地称为根引用名
<?xml version="1.0" encoding="UTF-8"?>
<layout>
<default>
<reference name="root">
<block type="core/template" name="top.search" as="topSearch" template="catalogsearch/form.mini.phtml"/>
</reference>
</default>
</layout>
然后使用您目前正在使用的方式调用它。
<?php echo $this->getChildHtml(‘topSearch’) ?>
现在,您可以使用“引用名称”和“作为”名称,如上面的部分。 例如,你可以使用下面的类似设置参考页脚块添加搜索功能。 对于教育“为”名字是什么在一个.phtml文件中使用。 与“名”是一区块如何XML文件中引用。 所以在上面的例子。 我加入了搜索栏来根内容区域,然后用“为”,“卓”的对骂在我的一个.phtml文件
<?xml version="1.0" encoding="UTF-8"?>
<layout>
<default>
<reference name="footer">
<block type="core/template" name="footer.search" as="footerSearch" template="catalogsearch/form.mini.phtml"/>
</reference>
</default>
</layout>
然后调用它footer.phtml
<?php echo $this->getChildHtml('footerSearch') ?>
我知道这个问题是很老了,但是我要去发布我的回答,希望它可以帮助别人与此相同的问题
就我而言,我需要在我的页脚另一个搜索表单,所以我打开
应用程序/德兴/前端/碱/默认/布局/ catalogsearch.xml
并复制:
<reference name="header">
<block type="core/template" name="top.search" as="topSearch" template="catalogsearch/form.mini.phtml"/>
</reference>
到:应用程序/德兴/前端/我的主题/我的主题/布局/默认标签内local.xml中
<reference name="header">
<block type="core/template" name="top.search" as="topSearch" template="catalogsearch/form.mini.phtml"/>
</reference>
</default><!-- just to give a idea of the position of where you should paste this code -->
然后我把它改成:
<reference name="footer">
<block type="core/template" name="footer.search" as="footerSearch" template="catalogsearch/form.mini.phtml"/>
</reference>
</default>
然后在我的页脚文件我打电话:
<?php echo $this->getChildHtml('footerSearch') ?>
基本上你得告诉你的主题需要获得使用本地XML的“footerSearch”,那么你可以把它认为PHP。
文章来源: How to move my Magento mini search form to another spot in my template header?