olach/relationship

为 Kirby 3 CMS 的可排序多选字段

安装次数: 363

依赖项: 0

建议者: 0

安全: 0

星标: 24

关注者: 4

分支: 0

开放问题: 0

语言:Vue

类型:kirby-plugin

1.0.3 2022-10-15 21:45 UTC

This package is auto-updated.

Last update: 2024-09-16 02:14:58 UTC


README

Latest version License Required Kirby version

关系字段允许您从列表中选择和排序多个项目。

该字段最初是为 Kirby 2 创建的,当时没有可用的原生多选字段。在 Kirby 3 中,添加了内置的多选字段,这个字段不再真正需要。但有些人喜欢这个字段提供的不同 UI,因此它被更新以支持 Kirby 3。

relationship-field-demo

此插件可免费使用。但如果您觉得它很有用,请随意买我一杯咖啡 ☕️ 或通过我的联盟链接购买您的 Kirby 许可证。

要求

Kirby 3

仍在使用 Kirby 2?请使用此插件的 Kirby 2 版本

安装

下载并将此存储库复制到 /site/plugins/relationship

或者,您可以使用 composer 安装它:composer require olach/relationship

使用方法

在字段设置中定义选项列表。可以是手动定义,也可以使用强大的 查询语言

数据以逗号分隔的字符串形式保存,这意味着该字段可以与常规的 多选字段 互换。

具有预定义选项的示例

蓝图

countries:
  label: Countries
  type: relationship
  options:
    sweden: Sweden
    norway: Norway
    denmark: Denmark
    finland: Finland
    iceland: Iceland
    germany: Germany
    france: France
    spain: Spain
    portugal: Portugal

模板

<ul>
  <?php foreach ($page->countries()->split() as $country): ?>
  <li><?= $country ?></li>
  <?php endforeach ?>
</ul>

与相关页面相关的示例

蓝图

related:
  label: Related articles
  type: relationship
  options: query
  query: page.siblings

模板

<h2>Related articles</h2>
<ul>
  <?php foreach ($page->related()->toPages(',') as $related): ?>
  <li>
    <a href="<?= $related->url() ?>">
      <?= $related->title() ?>
    </a>
  </li>
  <?php endforeach ?>
</ul>

功能

搜索

要启用搜索,请在蓝图中的字段设置中添加 search: true

related:
  label: Related articles
  type: relationship
  options: query
  query: page.siblings
  search: true

最小和最大项目数

您可以控制所需的最小项目数和允许的最大项目数。不要忘记添加帮助文本,以通知编辑器有关要求。

related:
  label: Related articles
  type: relationship
  options: query
  query: page.siblings
  search: true
  min: 3
  max: 6
  help: Select from 3 up to 6 articles.

计数器指示器

当前所选项目数量的实用指示器显示在右上角。可以通过将选项的 counter 值设置为 false 来禁用此指示器。

related:
  label: Related articles
  type: relationship
  options: query
  query: page.siblings
  counter: false

键盘导航

该字段是键盘可访问的。按 tabshift + tab 以将焦点给予列表。在列表内,使用箭头键进行导航,并按 space 选择/取消选择项目。在可排序列表中,您可以通过按 space 选择项目,然后使用箭头键移动项目来排序项目。

许可证

MIT