Frage

In Orchard CMS versuche ich eine Möglichkeit zu finden, die Tags in der Tag Cloud so zu filtern, dass nur Tags aus Blogbeiträgen zurückgegeben werden.Derzeit gibt die Tag Cloud Tags von allen Inhaltstypen zurück.

Ich verwende die Standard-Tag-Cloud in Orchard 1.7.1.

Wenn es eine Einstellung im Admin gibt, super, wenn nicht, habe ich eine Abfrage in TagCloudService.cs gefunden.Ist das das, was ich bearbeiten muss?Wenn ja, kann mir jemand mit dem Filter helfen, den ich hier hinzufügen muss, um nur Blogbeiträge einzubeziehen?

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();

Danke

War es hilfreich?

Lösung

Ersetzen Sie den Anruf durch Query mit .Query().ForPart<TagsPart>().ForType("BlogPost").ForVersion(VersionOptions.Published).Join<TagsPartRecord>().

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top