视频地址:

https://www.youtube.com/watch?v=VF3I7RiBVEM&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=20

 

 第一种方式

定义一个theme。然后用系统的路径。来进行覆盖。在这个文件里先把原先的copy过来,然后进行修改就可以了。就起到了覆盖的效果。 

第二种方式。用module来进行改写

定义module.xml的时候要写这个sequence ,这个是指定执行顺序。

写一个原来控制那个页面测xml。然后找到控制他的block。进行reference过来进行改写。

在theme内,phtml只要路径一样,就可以直接覆盖重写原来的phtml。

xml路径一样,是对原来的xml进行crud的。

对于影响的先后顺序有点乱。来履一下。。

对于theme和module都对默认的vendor中的module进行修改以后。theme修改的是失效不执行的。在code中的module修改才会执行。

因为。会先执行code中的module,再执行theme中的修改。

在code中的module已经把这个block默认指定的phtml的路径修改掉了。所以你在theme还是按照圆形的phtml的路径来覆盖,不行的。

除非你在theme里修改的时候 ,也是按照code中module重新给block指定的新的phtml的路径来修改才会成功。

所以一句话。会先执行code,再执行design。design内phtml的路径。都是按照code执行后的最新的路径地址。 

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐