flipboxfactory/craft-element-lists
Composer 安装命令:
composer require flipboxfactory/craft-element-lists
包简介
Simple Element lists
README 文档
README
Element List introduces a table-based element relational field type; perfect for large or growing element relations.
New in Version 3
Element List field(s) now return a Relationship Interface (not the traditional Element Query Interface). As a result, if your app manipulates relationships in a custom manner (php/plugins/modules) some changes are required. Specifically, manipulating relations should use the add, remove, and save methods on the Relationship Interface (examples are below).
Note: Accessing field data using the legacy Element Query Interface via TWIG is still supported; no code change are required.
Requirements
This plugin requires Craft CMS 3.2.x thru Craft 3.3.x.
Installation
Choose one of the following ways to add Element List to your project:
-
Composer:
Simply run the following command from your project root:
composer require flipboxfactory/craft-element-lists -
Craft CMS Plugin Store:
Within your Craft CMS project admin panel, navigate to the 'Plugin Store' and search for 'Element List'. Installation is a button click away.
Once the plugin is included in your project, navigate to the Control Panel, go to Settings → Plugins and click the “Install” button for Element List.
Additional information (including pricing) can be found in the Plugin Store.
Features
Element List brings the familiar element 'index' view to your fields. Built for large relation sets, Element List provides content publishers a filterable, table based view to related elements. Element List is as easy to configure as native relationships.
Here are some of the features at a glance:
- Add/Remove relations in real time
- Handles large relational sets (hundreds/thousands)
- Sortable list view
- Searchable list view
- Developer friendly
Templating (version 1 & 2)
Similar to native relational fields, an Element List field returns an Element Query Interface.
Loop through field relations:
<ul> {% for relatedElement in element.fieldHandle.all() %} <li>{{ relatedElement.id }} - {{ relatedElement.someCustomField }}</li> {% endfor %} </ul>
Templating (version 3)
An Element List field returns an Relationship Interface which is the primary interface for accessing and managing relationships.
Loop through field relations:
<ul> {% for relatedElement in element.fieldHandle.collection.all() %} <li>{{ relatedElement.id }} - {{ relatedElement.someCustomField }}</li> {% endfor %} </ul>
The legacy query operations from version 1 & 2 (above) are still accessible (but discouraged).
Collections (new in Version 3)
In version 3 you'll begin to work with a Collection. These are super handy classes with various methods to interact with your data.
Eager Loading
Element Lists also supports eager-loading. Simply follow the native nested sets eager loading documentation.
Developers
Native relationship fields are not developer friendly; we aim to fix that in version 3 by introducing the concept of a Relationship Interface.
Here are a few examples:
// Add two new users to the list Entry::findOne(['id' => 1]) ->userListField ->add([ 'nate@flipboxdigital.com', 'damien@flipboxdigital.com' ]) ->save();
// Remove one user and add another Entry::findOne(['id' => 1]) ->userListField ->remove('nate@flipboxdigital.com') ->add('damien@flipboxdigital.com') ->save();
// Remove all users Entry::findOne(['id' => 1]) ->userListField ->clear() ->save();
In the above examples, we're saving the relationships immediately; however if you make changes to your relationships and don't save, when the element is saved the relationship changes will also be saved.
Screenshots
Credits
flipboxfactory/craft-element-lists 适用场景与选型建议
flipboxfactory/craft-element-lists 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9.61k 次下载、GitHub Stars 达 6, 最近一次更新时间为 2018 年 04 月 30 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「yii2」 「Craft」 「elements」 「craft cms」 「flipbox」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 flipboxfactory/craft-element-lists 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 flipboxfactory/craft-element-lists 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 flipboxfactory/craft-element-lists 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Expand, collapse, change the status of, or delete multiple blocks in a Matrix field simultaneously.
A custom URL rule class for Yii 2 which allows to create translated URL rules
GraphQL authentication for your headless Craft CMS applications.
Allows customers sign up for recurring and one-time payments with Stripe, perfect for orders, donations, subscriptions, and events. Create simple payment forms in seconds easily without coding. For Craft CMS 3.x
A set of form elements for SilverStripe
Supercharged text field validation.
统计信息
- 总下载量: 9.61k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 6
- 点击次数: 13
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: proprietary
- 更新时间: 2018-04-30





