0

我在这里安装 Magento 时遇到了一些麻烦,我从一家公司“继承”了该公司,该公司对该主题进行了一些非常繁重的定制。

我试图使大部分变化合理化,并且非常成功。现在的问题是,我有一些模板文件只有一行更改。

例如,在这种特定情况下,它<button>现在是一个<a>链接。这几乎只是 300 行模板文件中的一行。

扩展的布局文件也出现了类似的问题。他们在那里有一条脏线,例如重置整个布局。然后我需要在设计中覆盖完整的布局 XML 文件,只需在一行中进行一点更改,因为这些布局文件要么被覆盖,要么未被覆盖。不涉及合并过程。

我查看了 Magento 的设计者文档,但找不到任何有用的东西。我知道我可以在我的设计中对“local.xml”进行一些特定的布局更改,但这些或多或少是“无上下文的”,如果这些更改确实属于某个扩展,那就不是很好了。

您是否知道一种方法来应用前半部分中提到的小模板更改或部分布局文件覆盖?

我的主要目标是保持文件自动更新,这几乎意味着:下载模块,替换文件,完成。无需手动更新任何被覆盖的文件。

4

1 回答 1

1

使用“继承”模板作为新包中的默认模板,并使用您的更改添加子模板。例子:

app/design/frontend/[package_name]/default - 这里将是“继承的”旧模板 app/design/frontend/[package_name]/[your_child_template] - 这里将是您的新子模板

skin/design/frontend/[package_name]/default - 这里将是“继承的”旧模板 skin/design/frontend/[package_name]/[your_child_template] - 这里将是您的新子模板

可以对一个 local.xml 文件中的所有页面或扩展名进行部分布局文件覆盖。例子:

应用程序/设计/前端/[package_name]/[your_child_template]/layout/local.xml

如果要为某个扩展添加更改,只需在模板文件夹中添加扩展 xml 文件。它将是最后一个渲染的,并且将使用原始文件。结帐购物车页面的示例:

app/design/frontend/[package_name]/[your_child_template]/template/checkout/cart.phtml

对于像按钮示例这样的 phtml 文件中的小更改,您必须覆盖整个 phtml 文件。Magneto 无法仅覆盖 phtml 文件的一部分。

于 2016-01-04T09:23:35.827 回答