Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates 覆盖magento核心管理模板_Templates_Magento_Layout_Overriding_Block - Fatal编程技术网

Templates 覆盖magento核心管理模板

Templates 覆盖magento核心管理模板,templates,magento,layout,overriding,block,Templates,Magento,Layout,Overriding,Block,覆盖核心Magento管理模板的最佳方法是什么? 例如: app\design\adminhtml\default\default\template\page\header.phtml 我只想在右上角菜单上创建一个链接,而不需要直接修改它或重新创建整个模板。现在,我有一个自定义模块,该模块具有如下布局块: <reference name="header"> <action method="setTemplate"> <template>mynamespace_

覆盖核心Magento管理模板的最佳方法是什么? 例如:

app\design\adminhtml\default\default\template\page\header.phtml

我只想在右上角菜单上创建一个链接,而不需要直接修改它或重新创建整个模板。现在,我有一个自定义模块,该模块具有如下布局块:

<reference name="header">
<action method="setTemplate">
<template>mynamespace_mymodule/header.phtml</template>
</action>
</reference>

mynamespace\u mymodule/header.phtml

这很好,但我必须完全重新创建模板。有没有办法只添加链接而不重新创建整个模板

不幸的是,没有,如果您需要将其包含在容器div中,那么没有一种方法可以不复制整个模板。通常,模板会包含一些点,您可以通过执行诸如
$this->getChildHtml('before_body_close')
,或者更通用的
$this->getChildHtml()
之类的操作来钩住这些点,但在这种情况下,没有此类调用。您可能会将一个新块作为标题块的同级,并尝试使用CSS对其进行定位,但这将非常棘手,而且很可能无法维护。

不幸的是,如果您需要将其包含在容器div中,则无法在不复制整个模板的情况下进行定位。通常,模板会包含一些点,您可以通过执行诸如
$this->getChildHtml('before_body_close')
,或者更通用的
$this->getChildHtml()
之类的操作来钩住这些点,但在这种情况下,没有此类调用。您可能会将一个新块作为标题块的同级,并尝试使用CSS对其进行定位,但这将非常棘手,而且很可能无法维护。

您还可以将adminhtml设置为具有基础和自定义版本(基于主题)并将默认内容复制到
app/design/adminhtml/base/default/
。然后将要编辑的模板复制到
app/design/adminhtml/your_-package/your_-theme/
,并在admin中应用主题。通过这种方式,您仍然可以复制它,但在imho中,您可以使用更加逻辑和整洁的方式


注意:您还必须将此应用于
skin/adminhtml

您还可以将adminhtml设置为具有基本和自定义版本(基于主题),并将默认内容复制到
app/design/adminhtml/base/default/
。然后将要编辑的模板复制到
app/design/adminhtml/your_-package/your_-theme/
,并在admin中应用主题。通过这种方式,您仍然可以复制它,但在imho中,您可以使用更加逻辑和整洁的方式

注意,您还必须将此应用于
skin/adminhtml