marionnewlevant / mega-merge
合并这个、那个和其他... 使用twig解析
2.0.0
2023-02-12 01:01 UTC
Requires
- craftcms/cms: ^4.0
README
MegaMerge: 合并 MegaMerge提供了一个字段类型,这是一个预定义了Key
和Value
列的Craft表。它允许您使用PHP数组和twig数组合并这些字段,然后查找合并数组中键的值。结果值会被解析为twig。
这是一个通用工具,尽管它的一种潜在用途(也就是我编写它的目的)是作为一个DIY SEO系统。
需求
此插件需要Craft CMS 4.0.0或更高版本。
安装
- 从您的项目目录使用Composer安装:
composer require marionnewlevant/mega-merge
- 在Craft控制面板的设置 > 插件下安装插件
或者
- 通过插件商店安装
MegaMerge概述
MegaMerge提供了一种字段类型(键/值表)和三个函数
craft.megaMerge.init()
接收一个键/值对的数组(该数组中的元素可以是megaMerge字段、PHP数组或twig数组),以及一个上下文对象。它将键/值对添加到全局键/值对集合中,将上下文对象添加到全局上下文对象中。
craft.megaMerge.reset()
将全局键/值对和全局上下文设置为空。
craft.megaMerge.value(key)
在键/值对中查找与键关联的值,使用全局上下文将其解析为twig,并返回解析后的值。如果没有匹配的值,则返回null
。
使用MegaMerge
键/值对 在g_configuration
全局集中名为globalSettings
的megaMerge字段
在config/custom.php中定义的设置
'megaMerge' => [ 'title' => 'MySite page', ],
调用init
globalSettings
的值将覆盖config.general.megaMerge
中的值
{% do craft.megaMerge.init([ craft.app.config.custom.megaMerge, g_configuration.globalSettings ], {object: entry}) %}
调用value
<title>{{ craft.megaMerge.value('title') }}</title>
由Marion Newlevant提供。图标由Dmitry Baranovskiy from the Noun Project设计