这可能是一个非常基本的问题。我在page.xml中创建了一个自定义块,然后将其放在标题块中。但它显示在我的页面底部。我搜索了教程和用户指南,但我找不到任何东西。
<block type="page/html_header" name="header" as="header">
<block type="page/template_links" name="serie.menu" as="serieMenu" output="toHtml" template="page/html/series.phtml" />
</block>
答案 0 :(得分:1)
检查HTML,查看阻止HTML呈现的位置。如果它在标题中输出HTML,但显示在底部,则很可能是CSS将块定位在您看到的位置。
我建议不要修改page.xml,而是在layouts目录中创建local.xml文件,并在那里包含块定义。您可以使用<reference>
标记来定位特定的块,并将块注入其中。
例如,由于您要定位名为header
的块,因此可以使用<reference name="header">
来定位该特定块,并定义您自己的块定义。
为此,您需要在主题目录中创建文件 /layouts/local.xml 文件,并在文件中包含以下内容:
<?xml version="1.0"?>
<layout version="0.1.0">
<!-- Default handle, loaded on most pages -->
<default>
<reference name="header">
<block type="page/template_links" name="serie.menu" as="serieMenu" output="toHtml" template="page/html/series.phtml" />
</reference>
</default>
</layout>
现在您的块已为标题定义,现在可以在 templates / page / header.phtml 文件中调用它。您可以像这样输出您的块:
<?php echo $this->getChildHtml('serieMenu') ?>
请记住,如果启用了缓存管理,modifiyng布局文件将要求您刷新Magento缓存。