在 Sitecore 插入 Link 对话框中过滤项目桶文件夹

Filter Item Bucket folders in Sitecore Insert Link Dialog

我们目前 运行 Sitecore 6.6 安装了 Item Bucket 模块和 运行。我们在媒体库中有很多 PDF,作者可以使用富文本编辑器的插入 Link -> 媒体项目对话框将其插入到页面中。

但是现在我们正在使用 Item Bucket 模块,每个 PDF 都在一个 "yyyy/MM/dd/HH/mm" 子文件夹中,这使得作者很难在树中找到某个 PDF。看这张图:

有没有办法在该对话框中过滤这些子文件夹?

有一篇关于如何使用存储桶控制 URL 的好文章: https://adeneys.wordpress.com/2013/07/19/item-buckets-and-urls/

还有来自 Whosebug 的现有问题:

How do I bucket Sitecore items on something other than their creation date?

这将帮助您以更合适的方式安排您的桶。但是,如果您想将存储桶的结构保留为日期文件夹,但只调整对话框,恐怕这不是一件容易的事,除非您至少升级到 Sitecore 7 以获得搜索界面。

Buckets 已成为 Sitecore 7 不可或缺的一部分,可与新的搜索功能一起使用,因此有了新的界面可以对您的 buckets 中的索引项目进行搜索。不幸的是它还没有在 6.6

当然,如果您迫切希望在不删除存储桶或更改物理存储模式的情况下为业务用户简化此搜索对话框,您可以考虑使用更复杂的方法来解决此问题(这只是我认为的理论方法在这种情况下,每一步都可能需要大量的研发工作):

  1. 使用反射,打开查找并打开负责该对话框的 dll(是 Sitecore.Kernel 吗?)并找到负责该特定对话框的确切 class
  2. 复制原始代码class/或继承
  3. 覆盖显示树的组件并使其显示文档的平面列表
  4. 重新引用对话框以使用您的组件而不是原始组件