Domanda

In Orchard CMS, sto cercando di trovare un modo per filtrare i tag nel tag cloud per restituire tag solo dai post del blog.In questo momento, il tag cloud restituisce tag da tutti i tipi di contenuto.

Sto usando il cloud tag predefinito in Orchard 1.7.1.

Se c'è un'impostazione in admin, ottima, se no, ho trovato una query in tagcloudservice.cs.È quello che ho bisogno di modificare.Se è così, qualcuno può aiutarmi con il filtro che devo aggiungere qui per includere solo i post del blog

tagCounts = _contentManager
                .Query<TagsPart, TagsPartRecord>(VersionOptions.Published)
                .Join<CommonPartRecord>()
                .Where(t => t.Container.Id == containerId)
                .List()
                .SelectMany(t => t.CurrentTags)
                .GroupBy(t => t)
                .Select(g => new TagCount {
                    TagName = g.Key,
                    Count = g.Count()
                })
                .ToList();
.

Grazie

È stato utile?

Soluzione

Sostituire la chiamata su Query con .Query().ForPart<TagsPart>().ForType("BlogPost").ForVersion(VersionOptions.Published).Join<TagsPartRecord>().

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top