Magento2 如何替换Magento 2.0中的phtml文件?
在Magento 2.0管理面板(Store>Cofiguration>Developer>Debug)中,我将“为店面启用模板路径提示”设置为“是”。这为我提供了对phtml文件的引用,这些文件为每个部分生成HTML代码 Q1)对这些文件进行更改会得到我想要的结果。但我认为如果我决定将Magento更新到新版本,它们将被恢复/更改。我说得对吗 问题2)是否有办法通过另一种方式更改phtml文件,将phtml文件放在我的主题文件夹中?如果是,我应该把它们放在哪里 (对于简单的HTML更改,我不太喜欢XML,如果可能的话,我希望尽可能多地编写静态HTML。我已经激活了自己的主题,没有任何基本主题。我是Magento的新手。)Magento2 如何替换Magento 2.0中的phtml文件?,magento2,Magento2,在Magento 2.0管理面板(Store>Cofiguration>Developer>Debug)中,我将“为店面启用模板路径提示”设置为“是”。这为我提供了对phtml文件的引用,这些文件为每个部分生成HTML代码 Q1)对这些文件进行更改会得到我想要的结果。但我认为如果我决定将Magento更新到新版本,它们将被恢复/更改。我说得对吗 问题2)是否有办法通过另一种方式更改phtml文件,将phtml文件放在我的主题文件夹中?如果是,我应该把它们放在哪里 (对于简单的HTML更改,我不太
谢谢 据我所知,有两种方法可以更改phtml模板。更改原始文件 Magento文件是一种不好的做法,应该避免使用 自定义主题 在自定义主题中,您可以按照Magento2的文件夹层次结构更改任何模板。 例如,更改login.phtml(来自模块Magento_客户)您的文件路径如下所示:
app/design/frontend/${VENDORNAME}/${THEMENAME}/Magento\u Customer/templates/form/login.phtml
源文件位于:
app/code/Magento/Customer/view/frontend/templates/form/login.phtml
我希望这有助于理解这里的命名方案
自定义模块
在自定义模块中,更改模板有点困难。下面是一个更改topmenu.html的示例,来自
模块Magento_主题。在您的模块中,模板需要放置在此处:
app/code/${VENDORNAME}/${MODULENAME}/view/frontend/templates/html/topmenu.phtml
此外,还需要布局定义:
app/code/${VENDORNAME}/${MODULENAME}/view/frontend/layout/default.xml
<?xml version="1.0"?>
<page layout="1columns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<referenceBlock class="Magento\Theme\Block\Html\Topmenu" name="catalog.topnav" template="${VENDORNAME}_${MODULENAME}::html/topmenu.phtml" ttl="false"/>
</body>
</page>
查看
app/code/Magento/Theme/view/frontend/layout/default.xml
以供参考,在这里可以找到这个xml垃圾;) 非常感谢你帮我解决这个问题!!!我想我明白逻辑了。我的路径提示给了我例如“/vendor/magento/module-theme/view/frontend/templates/html/bugreport.phtml”(我相信它是“vendor/…”,因为我从magento.com下载并安装了它)。我将“vendor/magento/module XXX”替换为“app/design/frontend/YOURVENDORNAME/YOURTHEMENAME/magento_XXX/”,并从示例中给出的地址“app/design/frontend/YOURVENDORNAME/YOURTHEMENAME/magento_Theme/templates/html/bugreport.phtml”中删除“view/frontend/”。要删除页脚链接,我认为您必须编辑XML。请参阅,这是否意味着有两种方法可以覆盖核心phtml文件?首选的方法是使用主题继承…如果我们将自定义phtml文件保存在主题文件夹中,那么视图/前端是否不需要模板?布局文件呢?