我已经使用OrchardCMS开始了我的第一个项目,到目前为止一切顺利。 这是一个出色的套件,一旦您快速掌握它的术语,它就会非常强大。
我正在努力解决的一个领域是显示分类法。 似乎几乎没有关于它的文档,形状跟踪也不是很有用。
我正在使用分类来显示具有相同术语的内容项。 现在这一切都很好用,但是默认分页页面大小为 10 个项目。 我已经挖掘了很多代码,发现这是从TermPart驱动的
protected override DriverResult Display(TermPart part, string displayType, dynamic shapeHelper) {
return Combined(
ContentShape("Parts_TermPart_Feed", () => {
// generates a link to the RSS feed for this term
_feedManager.Register(part.Name, "rss", new RouteValueDictionary { { "term", part.Id } });
return null;
}),
ContentShape("Parts_TermPart", () => {
var pagerParameters = new PagerParameters();
var httpContext = _httpContextAccessor.Current();
if (httpContext != null) {
pagerParameters.Page = Convert.ToInt32(httpContext.Request.QueryString["page"]);
}
var pager = new Pager(_siteService.GetSiteSettings(), pagerParameters);
var taxonomy = _taxonomyService.GetTaxonomy(part.TaxonomyId);
var totalItemCount = _taxonomyService.GetContentItemsCount(part);
var partSettings = part.Settings.GetModel<TermPartSettings>();
if (partSettings != null && partSettings.OverrideDefaultPagination) {
pager.PageSize = partSettings.PageSize;
}
问题是TermPart和TermPartSettings在哪里定义?
提前致谢
TermPartSettings
位于 Modules/Orchard.Taxonomies/Settings 文件夹中。TermPart
本身位于 Modules/Orchard.Taxonomies/Models 目录中。但是,不知道您想要这些信息,因为您不应该编辑 Orchard 的模块代码。
在 Orchard 的仪表板中创建新的分类时,将在"内容定义"下创建一个新的内容类型。它被称为您的分类术语。此内容类型具有一个名为"覆盖默认页面大小"的设置,您可以在其中定义自己的页面大小。