Пользователь
0,0
рейтинг
17 декабря 2007 в 13:50

Разработка → Параметры Wayfinder

MODX*

Описание


Служит для организации меню. Позволяет организовать простые,
многоуровневые, а также выпадающие меню.
Благодаря использованию шаблона результат может быть выведен в виде
нумерованных и ненумерованых списков или любом другом.

Рассмотрим параметры, которые есть у Wayfinder. Указанные параметры относятся к первой версии.

Авторы


  • Kyle Jaebker (muddydogpaws.com)
  • Ryan
    Thrash (vertexworks.com)

Версия


2.0

Примеры вызова


[[Wayfinder? &startId=`0`]]

[[Wayfinder?
&startId=`0` &level=`3` &hideSubMenus=`1` &outerTpl=`wfOuter`
&rowTpl=`wfRow` &hereTpl=`wfHere`]]

Параметры


&startId


Идентификатор папки из которой берутся документы для
формирования результата.

Значения: Любой номер (ID) документа.

По умолчанию: Текущий документ

&level


Число уровней в глубину для сбора документов.

Значение: целое число больше либо равно нулю.

По умолчанию: 0

&ignoreHidden


Игнорировать галочку «Показывать в меню» и выводить такие
документы тоже.

Значения:

  • true
  • false

По умолчанию: false

&ph


Название переменной, которая будет использована для вывода
результата (?)

Значения:

  • любое название переменной
  • false

По умолчанию: false

&debug


Установить режим отладки для диагностики.

Значения:

  • true
  • false

По умолчанию: false

&hideSubMenus


Выводить только активные меню.

Значения:

  • true
  • false

По умолчанию: false

&removeNewLines


Убирать символ переноса строки при выводе (?).

Значения:

  • true
  • false

По умолчанию: false

&textOfLinks


Поле, используемое для названия ссылки меню.

Значения:

  • menutitle
  • id
  • pagetitle
  • description
  • parent
  • alias
  • longtitle
  • introtext

По умолчанию: menutitle

&titleOfLinks


Поле используемое для title ссылки меню.

Значения:

  • menutitle
  • id
  • pagetitle
  • description
  • parent
  • alias
  • longtitle
  • introtext

По умолчанию: pagetitle

&rowIdPrefix


Устанавливать уникальный идентификатор (id) для каждого элемента (id складывается
из значения rowIdPrefix + docId).

Значения:

  • true
  • false

По умолчанию: false

&useWeblinkUrl


Выводить ссылку в переменную [+wf.link+].

Значения:

  • true
  • false

По умолчанию: true

&showSubDocCount


Выводить количество документов в папке в переменную
[+wf.subitemcount+].

Значения:

  • true
  • false

По умолчанию: false

&sortOrder


Задает порядок сортировки документов.

Значения:

  • ASC
  • DSC

По умолчанию: ASC

&sortBy


Поле, по которому происходит сортировка.

Значения:

  • id
  • menutitle
  • pagetitle
  • introtext
  • menuindex
  • published
  • hidemenu
  • parent
  • isfolder
  • description
  • alias
  • longtitle
  • type
  • template

По умолчанию: menuindex

Шаблоны для вывода меню


&outerTpl


Задает шаблон вывода меню.

Значение: Название используемого чанка.

Возможные переменные:

  • [+wf.classes+] — место для указания
    используемого CSS-класса
    (включает class=" ")
  • [+wf.classnames+] — содержит только название CSS-класса (не включает class=" ")
  • [+wf.wrapper+] — место где будет выводиться
    содержимое меню.

Пример:
<ul id=«topnav»[+wf.classes+]>[+wf.wrapper+]

&rowTpl


Задает шаблон вывода ряда меню.

Значение: Название используемого чанка.

Возможные переменные:

  • [+wf.classes+] — место для указания
    используемого CSS-класса
    (включает class=" ")
  • [+wf.classnames+] — содержит только название CSS-класса (не включает class=" ")
  • [+wf.link+] — адрес (href) для ссылки
  • [+wf.title+] — текст для title ссылки
  • [+wf.linktext+] — текст названия ссылки
  • [+wf.wrapper+] — место для вывода подменю
  • [+wf.id+] — вывод уникального идентификатора (id)
  • [+wf.attributes+] — вывод дополнительных
    атрибутов ссылки
  • [+wf.docid+] — идентификатор документа для
    текущего элемента
  • [+wf.subitemcount+] -количество элементов в
    папке
  • [+wf.description+] — выводит значения поля
    описания.
  • [+wf.introtext+] — выводит значения поля
    интротекста

Пример:
<li[+wf.id+][+wf.classes+]><a href="[+wf.link+]"
title="[+wf.title+]" [+wf.attributes+]>[+wf.linktext+][+wf.wrapper+]

&parentRowHereTpl


Задает шаблон вывода для текущего элемента, если это папка.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<li[+wf.classes+]><a href="[+wf.link+]"
title="[+wf.title+]">[+wf.linktext+]»[+wf.wrapper+]

&parentRowTpl


Задает шаблон вывода для всех документов, являющихся
папками.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<li[+wf.classes+]><a href="[+wf.link+]"
title="[+wf.title+]">[+wf.linktext+]»[+wf.wrapper+]

&hereTpl


Шаблон вывода для текущего документа.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<li[+wf.classes+]>[+wf.linktext+][+wf.wrapper+]

&innerTpl


Шаблон для всех списка всех подпапок.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<ul[+wf.classes+]>[+wf.wrapper+]

&innerRowTpl


Шаблон для ряда подменю.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<li[+wf.classes+]><a href="[+wf.link+]"
title="[+wf.title+]">[+wf.linktext+][+wf.wrapper+]

&innerHereTpl


Шаблон для текущего документа, если это подпапка.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<li[+wf.classes+]>[+wf.linktext+][+wf.wrapper+]

&activeParentRowTpl


Шаблон для вывода подпапок, которые являются предками
текущего документа.

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример:
<li[+wf.classes+]><a href="[+wf.link+]"
title="[+wf.title+]">[+wf.linktext+][+wf.wrapper+]

&categoryFoldersTpl


Шаблон для вывода папки категории. Папка категории
устанавливается установкой шаблона blank или атрибутом ссылки
rel=«category».

Значение: Название используемого чанка.

Возможные переменные: как у &rowTpl

Пример: <li[+wf.classes+]><a href="[+wf.link+]"
title="[+wf.title+]">[+wf.linktext+][+wf.wrapper+]

Название назначаемых CSS-классов


&firstClass


CSS-класс
для первого пункта текущего уровня меню.

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

&lastClass


CSS-класс
для последнего пункта текущего уровня меню.

Значение:

  • last
  • название CSS-класса.

Значение по умолчанию: last

&hereClass


CSS-класс
указывающий состояние «Вы здесь». Определяет всю цепочку пунктов.

Значение:

  • here
  • название CSS-класса.

Значение по умолчанию: here

&selfClass


CSS-класс
указывающий состояние «Вы здесь». Определяет только текущий документ.

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

&parentClass


CSS-класс
указывающий пункт меню как папку (имеет вложенные документы)

Значение:

  • parent
  • название CSS-класса.

Значение по умолчанию: parent

&rowClass


CSS-класс
задающий каждый ряд меню.

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

&levelClass


CSS-класс
определяющий каждый уровень меню. Для каждого уровня может быть задан
специальный CSS-класс
(level1, level2, level3 и т.д.)

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

&outerClass


CSS-класс
для шаблона вывода меню.

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

&innerClass


CSS-класс
для шаблона вывода подпунктов меню.

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

&webLinkClass


CSS-класс
для ссылок меню.

Значение:

  • none
    (отсутствует)
  • название CSS-класса.

Значение по умолчанию: none (отсутствует)

Подключение CSS и Javascript к меню


*&cssTpl


CSS
для добавления на страницу.

Значение:

  • название чанка с CSS
  • false

Значение по умолчанию: false

*&jsTpl


Javascript для добавления на страницу.

Значение:

  • название чанка с Javascript
  • false

Значение по умолчанию: false


Ссылка: Сниппет Wayfinder 2
Carw @Artima
карма
59,4
рейтинг 0,0
Пользователь
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (18)

  • 0
    Вышла уже вторая версия это замечательного инструмента, но документация по прежнему используется для первой версии. Надо будет найти информацию по нововведениям.
    • 0
      интересно, вот кто будет искать документацию по Wf на хабре? вы бы её в wiki внесли, а то ссылки на себя там ставите отменно ;)
      • 0
        Дело не в том будут искать или нет, а скорее в том, что кто-то, кто этим интересуется может запомнить, что такая информация есть вообще.
        На вики уж извините не стану принципиально ничего писать. Информацию нужно собирать в одном месте.

        Когда выйдет MODx 0.9.7, что станет с Вики? Кто будет информацию обновлять?
        • 0
          не буду распыляться по поводу "все яйца в одной корзине" и о том что пользователь modx первым делом пойдет на спец. ресурс за информацией.

          отмечу что у модх есть своя вики http://wiki.modxcms.com/index.php, а когда обновиться версия информацию обновить вы сами сможете. Или такая рутиная работа не входит в ваши планы и не совпадает с вашими целями?
          • 0
            В том и дело, что на modx-cms.ru мы все оперативно поправим. А вот в вики лезть я лично не стану. Вики есть минимум 2-е. И обе они уже малополезные. Будут скоро совсем неполезные.
            • 0
              не кривите душой. в те вики что сейчас есть вы оперативно добавляете ссылки на себя. так что польза есть ;)

              официальная вики появилась гораздо позже тех, что мы создали для русской версии документации. Так что они отмирают, а точнее трансформируются в заглушки. Вся русская документация будет постепенно аккумулироваться в вики на сайте разработчиков.

              если вы действительно ставите целью развитие системы и поддержку русских пользователей модх, имеет смысл делать это и в рамках официальных ресурсов. хотябы дублировать туда свои статьи/переводы.
              • 0
                Не так уж и оперативно. На самом деле не очень часто вспоминаю о Вики, но иногда люди спрашивают почему там информации мало, а на расширенную даже ссылки нет.

                Есть какие-то причины ограничивать на Вики пользователей в информации?

                По вопросу дублирования... Я согласен, что это может быть полезно, но сейчас более приоритетных задач хватает. Возможно позже, когда будут переведены основные материалы, разместим.
          • 0
            oym вообще эту тему не вижу смысла развивать. Официальная позиция старожилов MODx давно уже озвучена на форуме. Цитирую:

            "А по-поводу популяризации движка, я вообще сомневаюсь что это нужно. Мне лично нет. Ромео тут в какой-то ветке очень правильно по этому поводу сказал, и смысл сводится к тому, что мне не горячо и не холодно от популярности движка.

            Грамотные люди все равно так или иначе обратят на него внимание, если он достоин, а популярность лишь привлечет толпы ламеров и тысячи таких же глупых вопросов на форуме, на которые будут отвечать, отвечать одно и тоже и когда нервы сдадут, напишут какую-нибудь гадость, а потом как следствие - обида на модераторов и все сообщество и опять падение популярности движка. Замкнутый круг."

            "Продолжая же мысль Металлера о популяризации системы скажу.
            Большинство людей, которые хотят использовать modx не хотят в нем разбираться, для них opensource = халява. Удачи им.
            Большинство людей использующих modx и разобравшихся с ней не пишут на форуме о том как они решали возникшие вопросы. Они их решили и им пофигу до других.
            Теперь дайте мне хоть один мотив, кроме моих личных нтересов, известных только мне, почему я должен тратить большую часть своего времени на решение чужих проблем, да так чтобы все оставались довольны? это скорее не вопрос, а просто информация к размышлению."

            На этом тему считаю закрытой.
            • 0
              а я вам не про эту тему, не "передергивайте". Я вам о ваших позициях и о том что дело расходится с заявленными целями.

              мое желание писать свое мнение ну никак не зависит от вашего по поводу закрытия темы.
              • 0
                Для меня эти вещи связаны уж простите. Позиция старожилов провоцирует недоверие имеющимся источникам информации и словам. А на наши дела можете смотреть свободно. Мы каждую неделю, что-то улучшаем, форум во всю работает и помогает пользователям. Они охотно приходят и задают вопросы. Копировать информацию в полумертвую Вику и поддерживать разрозненность информации я пока не вижу смысла. Дело не в том, что жалко или какие-то принципы мешают. А просто есть ощущение, что разрозненность источников информации неполезна для сплочения сообщества. Поэтому все в рамках цели.
                • 0
                  Опять же распыление усилий. Занялся бы я переносом в вики и этого перевода небыло бы. А так он есть. Вопросы по меню на форуме modx-cms.ru одни из самых активных.
                  • 0
                    я не указываю что и как вам делать. я лишь прошу не маскировать то что вы делаете под лозунгами "популяризации", "развитие сообщества", "продвижение модх в массы". По-моему это не так. Если бы вы хотели и стремились к этим целям вы бы работали в рамках существующего сообщества.
                    Заметьте, до этого я ни разу не поставил ссылки на http://modx.ru/
                    Я вам говорю о сайте и форуме на http://modxcms.com/. Работайте там, вас никто не тянет за уши на http://modx.ru/ общайтесь с разработчиками напрямую. Вас же напротив, приходится подталкивать к этому.

                    p.s. клево я могу ссылки ставить? :)
                    • 0
                      Ставьте ради бога. Ссылки для того и придуманы. :-)

                      По поводу рамок уже обсуждали. Ничего нового так и не вынесли. В текущих рамках не удалось бы сделать даже 10% того, что уже сделано. Вы этого не понимаете?

                      Я совершенно против http://modx.ru ничего не имею. Устал уже повторять.

                      Вы же отчего-то постоянно ко мне привязываетесь. То оскорбляете, то чего-то требуете, то какие-то ссылки удаляете. Вы-то чего хотите? Загнать меня в загон и чтобы не рыпался? :-D

                      Недавно на нашем форуме один участник обнаружил уязвимость на http://modx.ru в поиске. Я пришел и вам ее указал на форуме. Чтобы вы закрыли эту ерунду и не создавали антирекламы хорошему продукту мизерным плохим решением. Что-то поменялось? Нет.

                      Вы предлагаете мне вернуться в рамки форума где говорят "дайте мне хоть один мотив, кроме моих личных нтересов, известных только мне, почему я должен тратить большую часть своего времени на решение чужих проблем". Вы хотите, чтобы я за вас все решал в зажатыми вами же рамками. Простите конечно, но я пас.
                    • 0
                      Вообще возникает ощущение некого заговора. Вы как будто пытаетесь замолчать, заглушить и т.д. любое вероятно-возможное развитие MODx в россии. В чем польза?
                    • 0
                      А по поводу популяризации. Нужны некие условия. Подождите немного буквально.
  • 0
    Возник вопрос. Не уверен, что он имеет отношение к Wayfinder, но все же:
    Имеется такая структура сайта:

    * Первый
    o Первый
    o Второй
    o Третий
    o Четвертый
    * Второй
    o Первый
    o Второй
    o Третий
    o Четвертый
    * Третий
    o Первый
    o Второй
    o Третий
    o Четвертый

    Каким образом в шаблоне сгенерировать ссылку на дочерний документ с именем «Четвертый» в текущем документе?
    • 0
      Не совсем понятен вопрос ввиду повторения пунктов схемы структуры сайта. Дочерних документов с именем «Четвертый» у вас несколько. Особенность построения ссылок в том, что они привязываются к идентификаторам в скобках после названия документа (id).

      При структуре:
      — Главная (1)
      — — Подпункт главной (2)
      — — Второй подпункт (3)
      — Контакты (4)
      Необходимо в шаблоне вместо ссылки написать следующее: [~3~], где 3 — это уникальный идентификатор страницы.
      <a href="[~3~]">
      


      P.S. Не считаю тему устаревшей, информация может пригодится другим... =)
      • 0
        внезапно! ) спасибо)

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.