markocupic / contao-twig-assets
从您的 TWIG 模板内部加载链接或脚本资源到文档。
1.1.1
2024-03-01 22:47 UTC
Requires
- php: ^8.1
- contao/core-bundle: ^4.13 || ^5.0
- nyholm/append-query-string: ^1.0
Requires (Dev)
- contao/easy-coding-standard: ^3.0
- contao/manager-plugin: ^2.3.1
- contao/test-case: ^4.5
- phpunit/phpunit: ^9.3
- symfony/http-client: 5.4.*
- symfony/phpunit-bridge: ^5.4
README
Contao Twig Assets
当使用 TWIG 模板时,通过全局数组 $GLOBALS
添加资源已不再可能。这个 Contao CMS 插件提供了 5 个 TWIG 函数,以便在您的 TWIG 模板 内部加载资源。
用法
这些五个函数都接受两个参数,例如:addJavascriptResource($resource_path, $position)。第一个参数 '$resource_path' 是必需的,而第二个参数 '$position' 是可选的。
默认用法
{# Inside your twig template: #}
{% do addJavascriptResource('bundles/contaofoobarplugin/js/my.js|static') %}
{# Same as $GLOBALS['TL_JAVASCRIPT'][] = 'bundles/contaofoobarplugin/js/my.js|static'; #}
设置一个 JavaScript 资源在固定位置或替换它
{# Inside your twig template: #}
{% do addJavascriptResource('bundles/contaofoobarplugin/js/my.js|static', 2) %}
{# Same as $GLOBALS['TL_JAVASCRIPT'][2] = 'bundles/contaofoobarplugin/js/my.js|static'; #}
概览
{# Inside your twig template: #}
{% do addJavascriptResource('bundles/contaofoobarplugin/js/my.js|static') %}
{# Same as $GLOBALS['TL_JAVASCRIPT'][] = 'bundles/contaofoobarplugin/js/my.js|static'; #}
{% do addCssResource('bundles/contaofoobarplugin/css/style.css|static') %}
{# Same as $GLOBALS['TL_CSS'][] = 'bundles/contaofoobarplugin/css/style.css|static'; #}
{% do addHtmlToHead('<script src="bundles/contaofoobarplugin/script.js"></script>') %}
{# Same as $GLOBALS['TL_HEAD'][] = '<script src="bundles/contaofoobarplugin/script.js"></script>'; #}
{% do addHtmlToBody('<script src="bundles/contaofoobarplugin/scripts.js"></script>') %}
{# Same as $GLOBALS['TL_BODY'][] = '<script src="bundles/contaofoobarplugin/script.js"></script>'; #}
{% do addMootoolsResource('<script src="bundles/myextension/moo_scripts.js"></script>') %}
{# Same as $GLOBALS['TL_MOOTOOLS'][] = '<script src="bundles/contaofoobarplugin/moo_script.js"></script>'; #}
文件制作时间
使用第三个参数(布尔值 true)添加脚本或 CSS 资产的文件制作时间,以确保在资产更改时客户端始终接收最新的资产版本。
{# Inside your twig template: #}
{% do addCssResource('bundles/foobar/css/my.css',null,true) %}
{# --> bundles/foobar/css/my.css?_ver=1709332057 #}
{% do addJavascriptResource('bundles/contaofoobarplugin/js/my.js',null,true) %}
{# --> bundles/contaofoobarplugin/js/my.js?_ver=1709332057 #}