sunlight-cms/twig-plugin

v1.0.2 2023-12-16 13:56 UTC

This package is auto-updated.

Last update: 2024-08-30 01:48:39 UTC


README

Twig集成插件。

内容

要求

  • PHP 7.2.5+
  • SunLight CMS 8

使用方法

Twig文档

<?php

use SunlightExtend\Twig\TwigBridge;

$output = TwigBridge::render('@extend/my-plugin/example.html.twig', [
    'foo' => 'bar',
]);

HCM模块

模板名称之后的任何额外参数都可在args变量中访问。

[hcm]twig,upload/my_template.html.twig,foo,bar[/hcm]

命名空间

  • 默认值:项目根目录
  • @extend: plugins/extend
  • @templates: plugin/templates

全局变量

sl全局变量对所有模板可用。

代理允许在目标类上调用任何静态方法。

函数

  • lang(): _lang()的别名
  • call(): call_user_func()的别名
  • dump([value], [maxLevel], [maxStringLen]): Kuria\Debug\Dumper::dump()的别名

扩展事件

twig.init

当Twig正在初始化时调用。其他插件可以使用此功能注册其自定义Twig功能。

参数

  • env - Twig\Environment的实例
  • loader - SunlightExtend\Twig\TemplateLoader的实例

覆盖模板

twig.init事件期间调用$loader->override($name, $newName)可以覆盖模板。

要绕过模板覆盖(例如,当扩展被覆盖的模板时),请在模板名称前加!。例如:!@extend/my-plugin/example.html.twig