3

任何人都可以帮助我从给定的关键字中获取完整的类别路径。我举一个例子如下,

例子:

类别 1----> 关键字 1 -----> 关键字 11,

从元数据中说我得到了“关键字 11”的值,但我需要整个路径,即 /Category 1/Keyword 1/Keyword 11。

任何人都可以帮助我如何使用 c# 在模板构建块中实现这一点。

4

2 回答 2

4

也许您可以尝试使用以下方法之一:

  • keyword.ParentKeywords 递归创建您正在寻找的路径。
  • 组织项 oi = 关键字。组织项;// 获取所有组织项
  • 关键字.OwningRepository

希望有帮助!

于 2012-10-25T11:41:00.840 回答
3

下面的代码应该可以帮助您获取路径。

bool isRecursive = false;
KeywordField kwdField = (KeywordField)metaFields["kwdField"];
Keyword curKwd = new Keyword(kwdField.Value.Id, engine.GetSession());
string kwdPath = curKwd.Title;
while (!isRecursive) {
  if (curKwd.ParentKeywords.Count > 0){
     foreach (Keyword kwd in curKwd.ParentKeywords) {
        kwdPath = kwd.Title + "/" + kwdPath;
     }
     curKwd = curKwd.ParentKeywords[0];
  } else {
     isRecursive = true;
  }
}
kwdPath = curKwd.OrganizationalItem.Title + "/" + kwdPath;
于 2012-10-26T14:20:37.047 回答