【发布时间】:2014-07-23 19:08:49
【问题描述】:
使用 Symfony2、Twig 和 Prismic:
我查看了以下资源,但我仍然不清楚如何在 Symfony2 中扩展某些方法
http://symfony.com/doc/current/cookbook/bundles/inheritance.html http://symfony.com/doc/current/cookbook/bundles/override.html
在我的供应商目录中有一个棱镜文件夹,其中包括以下目录:
vendors/prismic
php-sdk
prismic-bundle
对于我的应用程序,我复制了 prismic-bundle 目录并将其移至此处:
src/VAP/Bundle/PrismicBundle
然后更改 AppKernal.php 以包含此捆绑包:
// new Prismic\Bundle\PrismicBundle\PrismicBundle() ..removed the connection to the vendor dir
new VAP\Bundle\PrismicBundle\PrismicBundle() ..use this custom directory
效果很好。
但是,php-sdk 目录中有一些方法是从我的自定义 PrismicBundle 中调用的,我需要对其进行扩展或覆盖。例如,树枝模板可能会调用
var.getStructuredText('blog.body').asHtml(ctx.linkResolver)
位于此处:
供应商/prismic/php-sdk/src/Prismic/Fragment/StructuredText.php
我将如何/在哪里创建一个可以扩展/覆盖上述文件的文件?
如果 php-sdk 是一个捆绑包,还是它是供应商目录中原始 PrismicBundle 的一部分,我也感到困惑?
【问题讨论】: