如何覆盖模板从第三方包
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 3.3,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.3(当前的稳定版本)。
如何覆盖模板从第三方包
Symfob娱乐下载ony社会引以为欧宝体育平台怎么样傲的创建和维护高质量的包(见KnpBundles.com为大量不同特性。一旦你使用第三方包,你可能会需要覆盖和定制一个或更多的模板。
假设您已经安装了一个虚构的开源AcmeBlogBundle在您的项目。当你真的满意一切,你想覆盖一个博客列表页面的模板。在包内,你想要的模板来覆盖住在资源/视图/博客/ index.html.twig
。
覆盖包模板,只是复制index.html.twig
模板从包app /资源/ AcmeBlogBundle /视图/博客/ index.html.twig
(应用程序/资源/ AcmeBlogBundle
目录不存在,所以你需要创建它)。你现在可以自由定制模板。
谨慎
如果你在一个新的位置添加一个模板,你可能需要明确你的缓存(php bin /控制台缓存:清楚
),即使你在调试模式下。
这个逻辑也同样适用任何模板,住在一个包:遵循公约:应用程序/资源/ {BUNDLE_NAME} /视图/{路径/ / TEMPLATE.html.twig}
。
请注意
你也可以从内部覆盖模板包通过包继承。有关更多信息,请参见如何使用包继承覆盖的部分包吗。
重写核心模板
因为Symfony框ob娱乐下载架本身只是一个包,可以覆盖核心模板以同样的方式。例如,核心TwigBundle包含许多不同的“异常”和“错误”模板,可以被复制的每个资源/视图/例外
目录的TwigBundle,你猜对了,app /资源/ TwigBundle /视图/例外
目录中。