flowpack / neos-asset-usage
为 Neos CMS 提供资产使用服务
Requires
- flowpack/entity-usage: ^1.0 || dev-main || dev-master
- neos/neos: ^5.2 || ^7.0 || ^8.0 || dev-master
README
此软件包为 Neos CMS 5.x、7.x 和 8.x 版本的资产使用计算提供了一个替代方案。
Neos 总是在请求信息时计算资产使用情况。这可能会根据项目中节点和资产的数量而花费很长时间。
此软件包通过使用 Flowpack.EntityUsage
的注册服务来解决此问题,当资产被引用时注册使用,当资产不再由节点引用时注销。数据存储在数据库表中,并且可以通过提供的服务高效地查询和访问。
此外,该软件包还为 Neos CMS 的 AssetUsageInNodePropertiesStrategy
提供了一个替代方案。通过 AOP 禁用核心策略。
总结
当安装此软件包后,在 Neos CMS 中查看资产使用情况将非常快。
使用它与 Flowpack.Media.Ui
结合也将允许启用其他功能,如过滤未使用的资产和禁用已使用资产的删除按钮。
兼容性
Neos 5.2,Neos 7.x + Neos 8.x
安装
将软件包及其存储作为依赖项添加到您的站点包中
composer require --no-update flowpack/neos-asset-usage flowpack/entity-usage-databasestorage
在您的项目根目录中运行 composer update
最后,您需要运行命令以构建初始使用索引
./flow assetusage:update
这将存储您数据库中的所有使用情况。如果您将项目部署到另一台系统上,您必须确保在该系统上运行此命令。
建议定期运行此命令,以确保数据库中没有不再存在的使用情况或缺失的使用情况。当这种情况发生时,重要的是您要设法找出它们是从哪里来的。如果您认为这是由于本软件包中的错误造成的,请尽可能详细地提交一个问题。
特性:从使用计数中排除节点类型
可能的用例:如果您将此软件包与 neos/metadata-contentrepositoryadapter 结合使用,则元数据条目将视为使用计数。您可以使用以下设置调整此行为。
排除所有元数据节点类型的使用计数的示例
Flowpack: Neos: AssetUsage: excludedNodeTypes: - 'Neos.MetaData:AbstractMetaData'
排除多个自定义元数据节点类型的使用计数的示例
Flowpack: Neos: AssetUsage: excludedNodeTypes: - 'Vendor.PackageName:Custom.MetaData.NodeType1' - 'Vendor.PackageName:Custom.MetaData.NodeType2'
相关软件包
- Flowpack.EntityUsage 通用使用实现
- Flowpack.EntityUsage.DatabaseStorage 用于在数据库中存储使用情况
开发目标
此功能最终将集成到未来 Neos CMS 版本的核心中。