現在のノード/アイテムのタグの1つと同じタグが付いた特定のドキュメントタイプのアイテムをすべて取得しようとしています。Forループ複数のタグを持つUmbraco TagQueryを使用して関連ノード/アイテムを取得する
私は明示的に経由して、それを宣言することにより、タグのすべての関連アイテムを取得することができます:
var taggedContent = Umbraco.TagQuery.GetContentByTag("Tag1");
var taggedItems = taggedContent.Where(c => c.IsDocumentType("SpecificPageType", true) && c.IsVisible());
しかし、GetContentByTag
は一つだけ引数を取るよう、私が使用するforeachループを構築するかどうかはわかりませんタグの私のリスト。
私は.OrderBy("Id descending")
で注文できるように、各タグのすべての関連項目を組み合わせた関連項目のリストを作成するforeachループを作成したいと考えています。
はここで働く私の現在の静的コードです:私は、ループを構築しようとする試み失敗した
var tags = Umbraco.TagQuery.GetTagsForEntity(Node.getCurrentNodeId()).DistinctBy(t => t.Text).OrderBy(t => t.Text);
var taggedContent = Umbraco.TagQuery.GetContentByTag("Tag1");
var taggedItems = taggedContent.Where(c => c.IsDocumentType("SpecificPageType", true) && c.IsVisible());
foreach (var relatedItem in taggedItems)
{
<a href="@relatedItem.Url">
@{
var pageTitle = relatedItem.GetPropertyValue("pageTitle").ToString();
}
<h6>@Umbraco.Truncate(pageTitle, 80, true)</h6>
</a>
}
:
var tags = Umbraco.TagQuery.GetTagsForEntity(Node.getCurrentNodeId()).DistinctBy(t => t.Text).OrderBy(t => t.Text);
var listIWant = new List<IPublishedContent>();
foreach (var tag in tags)
{
var taggedContent = Umbraco.TagQuery.GetContentByTag(tag.ToString());
var taggedItems = taggedContent.Where(c => c.IsDocumentType("SpecificPageType", true) && c.IsVisible());
//How to modify the list here?
}
//OR
var tagsCount = tags.Count();
for (var i = 0; i < tagsCount; i++)
{
var taggedContent = Umbraco.TagQuery.GetContentByTag(tag.ToString());
var taggedItems = taggedContent.Where(c => c.IsDocumentType("SpecificPageType", true) && c.IsVisible());
//How to modify the list here?
}
// Modified the list to contain everything in the loop above, now order it
var orderedList = listIWant.OrderBy("Id descending");
// Create links from ordered list
foreach (var relatedItem in orderedList)
{
<a href="@relatedItem.Url">
@{
var pageTitle = relatedItem.GetPropertyValue("pageTitle").ToString();
}
<h6>@Umbraco.Truncate(pageTitle, 80, true)</h6>
</a>
}
を任意の助けてくれてありがとうと私は不明確だか、必要な場合は私に知らせてさらに詳しい情報。