我有一个包含很多查询链接的菜单。这将生成一个很好的菜单,其中 TitlePart 的内容作为文本。
我想使用我制作的另一个部件字段,而不是 TitlePart 中的文本。仅在菜单中,不在内容页面上。
是否有可能修改某些模块以实现此目的,或者是否有可以用来解决问题的位置?
我有一个包含很多查询链接的菜单。这将生成一个很好的菜单,其中 TitlePart 的内容作为文本。
我想使用我制作的另一个部件字段,而不是 TitlePart 中的文本。仅在菜单中,不在内容页面上。
是否有可能修改某些模块以实现此目的,或者是否有可以用来解决问题的位置?
我通过插入这个解决了这个问题
protected override void GetItemMetadata(GetContentItemMetadataContext context)
{
var part = context.ContentItem.As<ReferenceCompanyPart>();
if (part != null && part.CompanyName!= null && part.CompanyName != "") {
context.Metadata.DisplayText = part.CompanyName;
}
else {
var titlepart = context.ContentItem.As<ITitleAspect>();
context.Metadata.DisplayText = titlepart != null ? titlepart.Title : "";
}
}
然后我的 ReferenceCompanyName 被使用在菜单中的 TitlePart 中