У вас наверняка есть служебное определение этого расширения ветки, что-то вроде:
<service id="test_post_extension" class="Test\PostBundle\Twig\Extensions\TestPostExtension">
<tag name="twig.extension" />
</service>
Вы можете добавить любую другую услугу, например twig.extension.trans
.
XML становится:
<service id="test_post_extension" class="Test\PostBundle\Twig\Extensions\TestPostExtension">
<tag name="twig.extension" />
<argument type="service" id="twig.extension.trans" />
</service>
Ваш класс TestPostExtension тогда получит Symfony\Bridge\Twig\Extension\TranslationExtension
в качестве первого аргумента своего конструктора:
namespace Test\PostBundle\Twig\Extensions;
class TestPostExtension extends \Twig_Extension
{
public function __construct(Symfony\Bridge\Twig\Extension\TranslationExtension $transExt) {
$this->transExt = $transExt;
}
// some stuff
}