Sitecore 8 - 使用搜索控制器扩展多列表
Sitecore 8 - Extend the Multilist with Search controller
'Multilist with Search' 控制器有两个问题。
- 我们如何更改显示字段?
目前它显示如下所示。
136330 (City item - Cities) 我们要显示Display name + Language
可能吗?
- 我们有 4 种不同的语言,所以我们也需要按语言进行过滤。我们发现一些资源表明我们可以通过实施 Sitecore.Buckets.FieldTypes.BucketList 来覆盖它,但我们无法为这些问题找到合适的解决方案。
我们已经尝试了下面的 link 但它只适用于负载,但当我们搜索一个值时,结果如第 1 点所述。
How to get a Multilist with Search field to not display referenced items' version and language?
在等待好的答案吗?
找到答案并为 1 重写 OutputString 方法,如下所示。
public 覆盖字符串 OutputString(Item item)
{
return string.Format("{0} - {1}", (object)item.DisplayName,item.Fields["Postal code"].ToString());
}
对于 2,在 DoRender 方法中使用了以下代码。
使用(新语言切换器(Sitecore.Context.Language))
来源 = LookupSources.GetItems(当前,this.Source);
'Multilist with Search' 控制器有两个问题。
- 我们如何更改显示字段? 目前它显示如下所示。 136330 (City item - Cities) 我们要显示Display name + Language
可能吗?
- 我们有 4 种不同的语言,所以我们也需要按语言进行过滤。我们发现一些资源表明我们可以通过实施 Sitecore.Buckets.FieldTypes.BucketList 来覆盖它,但我们无法为这些问题找到合适的解决方案。
我们已经尝试了下面的 link 但它只适用于负载,但当我们搜索一个值时,结果如第 1 点所述。
How to get a Multilist with Search field to not display referenced items' version and language?
在等待好的答案吗?
找到答案并为 1 重写 OutputString 方法,如下所示。
public 覆盖字符串 OutputString(Item item) { return string.Format("{0} - {1}", (object)item.DisplayName,item.Fields["Postal code"].ToString()); }
对于 2,在 DoRender 方法中使用了以下代码。
使用(新语言切换器(Sitecore.Context.Language)) 来源 = LookupSources.GetItems(当前,this.Source);