zizther / craft-dynamic-variables
允许您将任何文本解析为 Twig 模板,并访问全局变量、条目等变量。
Requires
- php: ^8.0
- craftcms/cms: ^4.0|^5.0
Requires (Dev)
- craftcms/rector: dev-main
README
允许您将任何文本解析为 Twig 模板,并访问全局变量、条目等变量。
要支持 Craft 3,请查看 v1 分支。
要求
此插件需要 Craft CMS 4.0.0+ 或 5.0.0+。
安装
要安装此插件,请按照以下说明操作。
-
打开您的终端并转到您的 Craft 项目
cd /path/to/project
-
然后告诉 Composer 加载此插件
composer require zizther/craft-dynamic-variables
-
在控制面板中,转到设置 → 插件,并点击 Dynamic Variables 的“安装”按钮。
动态变量概述
过滤器和函数允许您从 Craft、全局、插件和您的配置中输出变量。您可以使用 {{ }}
语法引用字段,就像在模板中一样。
默认情况下,此插件仅限于输出基于文本的字段,但如果您想引用条目本身,您可以在过滤器和函数中传入条目,您将能够引用传入条目中的任何字段。
{% set entry = craft.entries({ id: 1 }).one() %}
{{ '{{ entry.title }}' | dv(entry) }}
{{ dv('{{ entry.title }}', entry) }}
使用动态变量
以下是一些使用过滤器和函数的示例。
Craft
想输出网站名称或网站 URL。
过滤器
{{ '{{ siteName }} {{ siteUrl }}' | dv }}
函数
{{ dv('{{ siteName }} {{ siteUrl }}') }}
全局
如果您想输出全局字段,例如电话号码。
过滤器
{{ '{{ globalHandle.fieldHandle }}' | dv }}
函数
{{ dv('{{ globalHandle.fieldHandle }}') }}
插件示例
如果您想从 SEOmatic 等插件输出字段数据。
过滤器
{{ '{{ seomatic.site.sameAsLinks["instagram"]["url"] }}' | dv }}
函数
{{ dv('{{ seomatic.site.sameAsLinks["instagram"]["url"] }}') }}
配置示例
也许您想从配置文件中输出值,例如 general.php 文件中的自定义值。
过滤器
{{ '{{ craft.app.config.general.custom.variableName }}' | dv }}
函数
{{ dv('{{ craft.app.config.general.custom.variableName }}') }}
由 Nathan Reed 提供