我在我的一种自定义内容类型中使用了分类部分,并且使用形状跟踪器,我能够为该控件创建自定义视图模板 (Fields.Contrib.TaxonomyField.cshtml)。
当我对页面上的元素进行形状跟踪时,在模板下它确实显示了我的自定义模板,就像我在外部文件上的一样:
@using Orchard.Utility.Extensions;
@using Orchard.ContentManagement;
@{
var terms = (IEnumerable<Contrib.Taxonomies.Models.TermPart>)Model.Terms;
string name = @Model.ContentField.Name;
}
@if (Model.Terms.Count > 0) {
@(new HtmlString( string.Join(", ", terms.Select(t => Html.ItemDisplayLink(Html.Encode(t.Name), t.ContentItem ).ToString()).ToArray()) ))
}
<div>TEST TEXT</div>
但是,当我切换到实际输出的 HTML 时,它显示的是标准的内置模板,并且没有使用我的自定义。
<p class="taxonomy-field">
<a href="/categories/coffee-shop">Coffee Shop</a>
</p>
根据形状跟踪器,它正在使用我的自定义模板:
形状字段_Contrib_TaxonomyField
活动模板 ~/Themes/Continuum/Views/Fields.Contrib.TaxonomyField.cshtml
显示类型详细信息
这感觉像是一个错误......一切看起来都连接正确......我还需要做些什么来使用我的自定义视图模板进行分类吗?
非常感谢!