Как получить список страниц братьев и сестер в Kentico - PullRequest
0 голосов
/ 14 декабря 2018

У нас есть приложение MVC, которое использует Kentico CMS.Как я могу получить братские и дочерние страницы из данного узла в дереве контента?Например, дерево контента выглядит так:

/
---Breads
-----Foo Bread
----------Recipe X
----------Nutrition A
---Cookies
-----Bar Cookie
----------Recipe Y
----------Nutrition B
-----Foo Cookie
  • Когда посетитель находится на Nutrition A странице, он должен увидеть рецепт X на боковой панели
  • Когда пользователь находится на странице рецепта Y, он долженсм. Nutrition B на боковой панели
  • Если они находятся на странице Cookies, они должны увидеть Bar Cookie и Foo Cookie на боковой панели и т. д.

Некоторые примеры, которые я нашел полезнымимакросы и я не думаю, что смогу использовать это в MVC.

Ответы [ 2 ]

0 голосов
/ 14 декабря 2018

Я бы сказал, что вы хотите получить дочерних элементов текущего родительского документа на том же уровне, скажем, у вас есть CurrentDocument:

    var docs = DocumentHelper
        .GetDocuments()
        .OnSite("CorporateSite")
        .Culture("en-US")
        .Where(d => d.NodeParentID == CurrentDocument.NodeParentID && d.NodeLevel == CurrentDocument.NodeLevel)
        .OrderBy(d => d.DocumentName);

    // Go through the documents 
    foreach (var document in docs)
    {
        Response.Write(HTMLHelper.HTMLEncode(document.DocumentName) + "<br />");
    }

Подробнее о DocumentHelper

0 голосов
/ 14 декабря 2018

Если вы используете CurrentDocument.NodeAliasPath, это вернет текущий документ, на котором вы находитесь, и ваш URL будет

/Breads/Foo-Bread/Nutrition-A

Так что вы можете просто использовать:

CurrentDocument.Parent.NodeAliasPath + "/%"

в качестве вашего пути в вызове API.

...