olach / relationship
为 Kirby 3 CMS 的可排序多选字段
1.0.3
2022-10-15 21:45 UTC
Requires
This package is auto-updated.
Last update: 2024-09-16 02:14:58 UTC
README
关系字段允许您从列表中选择和排序多个项目。
该字段最初是为 Kirby 2 创建的,当时没有可用的原生多选字段。在 Kirby 3 中,添加了内置的多选字段,这个字段不再真正需要。但有些人喜欢这个字段提供的不同 UI,因此它被更新以支持 Kirby 3。
此插件可免费使用。但如果您觉得它很有用,请随意买我一杯咖啡 ☕️ 或通过我的联盟链接购买您的 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
键盘导航
该字段是键盘可访问的。按 tab 和 shift + tab 以将焦点给予列表。在列表内,使用箭头键进行导航,并按 space 选择/取消选择项目。在可排序列表中,您可以通过按 space 选择项目,然后使用箭头键移动项目来排序项目。
许可证
MIT