如何在子主题中覆盖父主题app / code / Block / class.php

时间:2019-07-20 00:39:53

标签: magento2

是。我猜。一个稍微复杂的问题。 我可以从子主题的应用程序/设计文件中覆盖父主题的应用程序/代码文件吗?

我建立了Infortis / Ultimo主题的子主题。父主题修改了UltraMegamenu,并自定义了如何为顶部导航编写类别链接。 我的自定义主题myOrg / myTheme仅写在app / design目录中,但是我想覆盖的父主题代码在app / code目录层次结构中。

PS:我知道我可以在app / code结构中编写模块或插件来做到这一点,但我希望能够通过app / design / MyOrg / theme结构来做到这一点。

我的直觉是通过以与父主题相同的方式调用容器和模板,但将我自己的类替换为父主题类,从而在主题的default.xml中覆盖此代码。但是,这似乎违反了Magento的解析规则。有没有人这样做,请他们给我一些建议。

在父主题应用程序/代码目录中:

                         

我在app / design目录中以及我自己主题的default.xml文件中的替换项:

                            

然后,navigation.php存在于MYORG / mytheme / Block / Navigation / Navigation.php

我希望使用default.xml文件可以将自己的应用程序/设计/主题代码作为目标,以覆盖父应用程序/代码/主题代码。

0 个答案:

没有答案