hypejunction/elgg-twig
Composer 安装命令:
composer require hypejunction/elgg-twig
包简介
Twig Template Rendering for Elgg
关键字:
README 文档
README
Adds support for twig templates in Elgg
Using Templates
To add a twig template, simply add a file with .twig extension into your plugin's views, under default viewtype.
<!-- my_plugins/views/default/test.twig --> <div class="hello">Hello, {{ name }}</div>
To render a template use ``elgg_twig()with or without a view name without.twig` extension:
$user = elgg_get_logged_in_user_entity(); echo elgg_twig('test', ['name' => $user->getDispayName()];
You can override templates like any other view, but you can not extend them or filter them using hooks.
Development
To simplify development, set environment config value to development, otherwise you need to flush caches to reload template changes.
elgg_set_config('environment', 'development');
Globals
Globals available in templates
app- application dataapp.user- logged in user entityapp.site- site entityapp.registrationUrl- registration URLapp.loginUrl- login URL
Functions
Function available in templates
echo()- equivalent ofelgg_echo()view()- equivalent ofelgg_view()assetUrl()- equivalent ofelgg_get_simplecache_url()requireJs()- equivalent ofelgg_require_js()
Notes
I have initially taught elgg_view() to render twig templates, but it had a negative
performance impact, likely because of a view_vars hook registered for all views.
Until there is a wildcard hook registration, elgg_twig() is the way to go,
however it does not allow view vars to be filtered or views to be extended, which in the end
is somewhat a win, because of simplicity.
统计信息
- 总下载量: 23
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0
- 更新时间: 2019-02-14