首页 > 解决方案 > 覆盖来自另一个包的包模板

问题描述

我正在为 Sylius 电子商务框架开发一个插件。我正在使用带有 Sylius 标准 1.2 的 Symfony 4。在这个插件(它只是一个 Symfony Bundle)中,我想覆盖在 SyliusAdminBundle 中定义的模板,并且我想避免将它复制到 AppBundle 视图文件夹中。

我试图按照这里显示的解释:Override bundle template from another bundle in symfony 3.4/4

但我不知道如何使它工作!

您对我如何处理有任何想法吗?

标签: symfonysylius

解决方案


我认为您应该能够将覆盖的模板放入templates/bundles/SyliusAdminBundle/path/to/template.html.twig. 同样可以从主题内部完成:app/themes/ThemeName/SyliusAdminBundle/path/to/template.html.twig. 通常,插件只是简单地给出在你的项目中进行调整的说明。这不是最灵活的,但项目很清楚哪些模板已更改。

更多背景信息:https ://docs.sylius.com/en/1.2/customization/template.html 。

Symfony 曾经有一个“捆绑继承”机制来执行您最初计划执行此操作的方式,但该功能已从版本 3.4 中弃用:https ://symfony.com/blog/new-in-symfony-3-4-不推荐使用捆绑继承


推荐阅读