art-and-flywork/kirby.plugin.fieldset

面板字段,加载字段集并将值存储在单个字段中,格式为yaml

安装次数: 2

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 2

语言:JavaScript

类型:kirby-plugin

0.0.1 2020-09-14 09:22 UTC

This package is auto-updated.

Last update: 2024-09-19 04:44:52 UTC


README

面板字段,加载字段集并将值存储在单个字段中,格式为yaml。

这就像是一个扩展,但不同之处在于所有来自字段集字段的值都存储在单个字段中。这样,您可以重复使用字段集并将其绑定到片段: snippet('mySnippet', $page->the_fieldset()->yaml())

用法

创建一个带有字段集的蓝图

site/blueprints/fieldsets/somefields.yml

type: group
fields:
  title:
    type: text
    label: A nice title
  text:
    type: textarea
    label: Type your text here

type: group 对于此插件工作不是必需的,但它会在需要时使其作为标准的kirby字段扩展工作。

在您的页面yml中添加字段集字段,并将其指向字段集蓝图

site/blueprints/pages/default.yml

fields:
  myfields:
    type: fieldset
    blueprint: fieldsets/somefields
    label: Show me my fields

在面板中,somefields.yml中的字段被加载到字段集字段中

alt text

数据以yaml格式存储在txt文件中

----

Myfields:

title: This is my title
text: This is my text

在模板中使用值

有2种简单的方式可以访问存储在字段集字段中的值。有一个提供的链式方法或它可以用本地的yaml方法解码,甚至可以传递

1. 使用提供的字段方法

该插件引入了一个字段方法,以便将值作为常规链式kirby字段访问

<h1><?= $page->myfields()->fieldset()->title() ?></h1>
<?= $page->myfields()->fieldset()->text()->kirbytext() ?>

2. 手动解码yaml

在模板中,数据可以通过yaml解码作为数组访问

default.php

<?php foreach ($page->myfields()->yaml() as $key => $value): ?>
  <p><?= $key ?> – <?= $value ?></p>  
<?php endforeach ?>

解码后,值可以直接传递到片段中

<?php snippet('mySnippet', $page->myfields()->yaml()) ?>

site/snippets/mySnippet.php

<h2><?= $title ?></h2>
<?= kirbytext($text) ?>

许可

[MIT