< Zurück

ZF2: Custom ZfcTwig Extension unter Zend 2 ZF2: Custom ZfcTwig Extension unter Zend 2

14.03.2015 17:43:00 • Categories: Allgemein, Zend Framework 2, Twig • Tags: Twig, Zend Framework 2

ZF2: Custom ZfcTwig Extension unter Zend 2

Notizen zu einer exemplarischen Twig Extension unter ZF2 &ZfcTwig:

Klasse anlegen z.B. unter Application/src/Application/View/CustomTwigExtension.php

<?php

// http://stackoverflow.com/questions/28254666/twig-add-filter

namespace Application\View;

use Twig_Extension; use Twig_SimpleFilter; use Twig_SimpleFunction;

class CustomTwigExtension extends Twig_Extension { public function getFilters() { return [new Twig_SimpleFilter('ucfirst', 'ucfirst') ]; } public function getName() { return "CustomTwigExtension"; } public function getFunctions() { return [new Twig_SimpleFunction('renderimg', function ($picture, $width = 100, $height = 100) { $filename = basename($picture);

        return '&lt;img src="' . $filename . '" width="' . $width . '" height="' . $height . '" /&gt;';
    }
    , array(
        'is_safe' =&gt; array(
            'html'
        )
    )) ];
}

}

Custom Extension in config/autoload/global.php registieren:
<?php
/**
 * Global Configuration Override
 *
 * You can use this file for overriding configuration values from modules, etc.
 * You would place values in here that are agnostic to the environment and not
 * sensitive to security.
 *
 * @NOTE: In practice, this file will typically be INCLUDED in your source
 * control, so do not include passwords or other sensitive information in this
 * file.
 */

return array( 'zfctwig' => [ 'extensions' => [ 'Twig_Extension_Debug',

            // Custom Twig Extension registrieren
            \Application\View\CustomTwigExtension::class,
      ],
      'environment_options' =&gt; array(
            'debug'         =&gt; false
      )
],

);

Verwendung im Twig Template
{{ renderimg('test.jpg', 100, 100) }}
 

 


< Zurück | ^ nach oben