更新magento文件时更新XML

时间:2014-02-24 10:28:32

标签: php xml magento

这段代码位于 header.phtml

<?php echo $this->getChildHtml('topLinks') ?> 

但是我想把它移到另一个文件并让它生成其他地方,即在 .. page / 1column.phtml 3columns.phtml

所以我复制并粘贴它,但它没有出现:(

我猜它与XML文件有关,我看了几个vids来了解它,所以我理解它就像html,但我不明白它是如何在magento中使用的确切地说,或者改变它的过程是什么

我是否要复制和编辑原件,或将某些内容放入我自己的 local.xml 文件中?

请有人解释发生了什么,或者指出一些解释此XML用法的内容。

由于

1 个答案:

答案 0 :(得分:0)

你做它的方式有效,但是我倾向于尝试在可能的情况下通过local.xml文件保留所有更新。它使您的所有更改保持集中且更易于跟踪。

首先需要创建或更新local.xml文件如果没有local.xml文件,可以在

中创建一个

app-&gt; frontend-&gt; [包名称] - &gt; [主题名称] - &gt; layout-&gt; local.xml

创建此内容后,您可以将此帖中的内容完全复制到该文件中,以便开始使用该文件。

通过LOCAL.XML文件进行所有更新,而不是通过page / catalog / checkout.xml等!这将使得后来的升级变得更加容易。此外,您还可以在一个文件中快速查看对网站所做的所有更改。

以下示例将其添加到根引用名称,该名称将在所有页面上提供,但可以在template-&gt; page-&gt; 1column.phtml或2column-left.phtml 3column.phtml等中轻松调用。

<?xml version="1.0" encoding="UTF-8"?>
<layout>
    <default>
        <reference name="root">
            <block type="page/template_links" name="top.links" as="topLinks"/>
        </reference>
   </default>
</layout>

然后使用您当前使用的方式调用它。

<?php echo $this->getChildHtml('topLinks') ?>

现在您可以使用“参考名称”和“as”名称,如上一节所述。例如,您可以使用下面的类似设置来引用页脚块以添加搜索功能。对于教育,“as”名称是.phtml文件中使用的名称。和“name”是在xml文件中引用块的方式。所以在上面的例子中。我将搜索字段添加到根内容区域,然后在我的.phtml文件中使用“as”名称“topLinks”调用它

<?xml version="1.0" encoding="UTF-8"?>
<layout>
    <default>
        <reference name="footer">
            <block type="page/template_links" name="top.links" as="topLinks"/>
        </reference>
    </default>
</layout>

然后使用

在footer.phtml中调用它
<?php echo $this->getChildHtml('topLinks') ?>

希望这有帮助!!有任何问题请随时问!!无论如何,如果你这次没有决定使用这种方法。希望它有助于教一些本地文件的工作原理。