Автоматическая кнопка Umbraco - PullRequest
0 голосов
/ 12 марта 2012

Я занимаюсь разработкой простого приложения в Umbraco CMS. То, чего я хочу добиться, - это создать автоматическую ссылку, которая появится на каждом элементе уровня 2 и приведет к его родительскому элементу на уровне 1. Пример:

  • пункт 1
    • подэлемент а
    • подэлемент b
    • подэлемент c
  • пункт 2
    • подэлемент d
    • подэлемент e

Ссылка со страниц a, b и c должна быть нацелена на элемент 1, а ссылка d и e должна вести на элемент 2.

Я предполагаю, что мне следует использовать некоторый макрос XSLT-кода, чтобы связать мой элемент с его родительским объектом в структуре меню уровня 1, но я не знаю, как это сделать.

Есть идеи?

Спасибо

Бартош

1 Ответ

0 голосов
/ 13 марта 2012

Вам понадобится что-то вроде следующего:

<xsl:param name="currentPage"/>

<xsl:template match="/">

  <xsl:if test="$currentPage/@level = 2">
    <a href="{umbraco.library:NiceUrl($currentPage/parent::*[@isDoc]/@id)}">
      <xsl:value-of select="name($currentPage/parent::*[@isDoc])" />
    </a>
  </xsl:if>

</xsl:template>

Он использует метод NiceUrl () из библиотеки Umbraco для генерации URL на основе идентификатора.

Может оказаться полезной следующая таблица, когда вы попытаетесь выяснить и перейти к базовому XML Umbraco: http://our.umbraco.org/wiki/reference/xslt/xpath-axes-and-their-shortcuts

...