Browse Source

Merge pull request #1487 from nergal/twig-viewrenderer

Add extensions support to yii\twig\ViewRenderer
tags/2.0.0-beta
Alexander Makarov 11 years ago
parent
commit
ffbdaa5dce
  1. 11
      extensions/yii/twig/ViewRenderer.php

11
extensions/yii/twig/ViewRenderer.php

@ -28,6 +28,11 @@ class ViewRenderer extends BaseViewRenderer
public $cachePath = '@runtime/Twig/cache';
/**
* @var array extentions list.
*/
public $extensions = [];
/**
* @var array Twig options
* @see http://twig.sensiolabs.org/doc/api.html#environment-options
*/
@ -45,6 +50,12 @@ class ViewRenderer extends BaseViewRenderer
$this->twig = new \Twig_Environment($loader, array_merge([
'cache' => Yii::getAlias($this->cachePath),
], $this->options));
if (!empty($this->extensions)) {
foreach ($this->extensions as $extension) {
$this->twig->addExtension(new $extension());
}
}
$this->twig->addFunction('path', new \Twig_Function_Function(function ($path, $args = []) {
return Html::url(array_merge([$path], $args));

Loading…
Cancel
Save