vintagesucks/twig-renderer

Twig 3.x for Yii 1.x

Installs: 44 964

Dependents: 1

Suggesters: 0

Security: 0

Stars: 1

Watchers: 2

Forks: 30

Open Issues: 0

Type:yii-extension

v3.0.2 2023-01-28 01:13 UTC

This package is auto-updated.

Last update: 2024-05-18 10:09:28 UTC


README

Build Status Dependabot Packagist Packagist

This extension allows you to use Twig 3.x templates in Yii 1

Requirements

  • Yii 1.1 or above
  • PHP 7.2 or above

Installing

  • Install via Composer:
composer require vintagesucks/twig-renderer
  • Add the following to your config file 'components' section:
'viewRenderer' => [
    'class' => 'root.vendor.vintagesucks.twig-renderer.ETwigViewRenderer',
    'twigPathAlias' => 'root.vendor.twig.twig.lib.Twig',
    'fileExtension' => '.twig',
],

Usage

  • See Twig syntax
  • Current controller properties are accessible via {{ this.pageTitle }}
  • Yii::app() object is accessible via {{ App }} (Example: {{ App.name }})
  • Yii's core static classes (CHtml, for example) are accessible via {{ C.ClassNameWithoutFirstC.Method }} (Example: {{ C.Html.textField(name,'value') }})
  • To call functions or methods which return non-string results wrap these calls in a void function: {{ void(App.clientScript.registerScriptFile(...)) }}

Development

Run test matrix locally with act:

act --job build \
  --workflows .github/workflows/build.yml \
  --platform ubuntu-latest=shivammathur/node:latest \
  --container-architecture linux/amd64