Вопрос по плэйсхолдерам в MODx

28
На сайте с 31.10.2009
Offline
116
699

Здравствуйте, уважаемые форумчане.

Требуется вывод меню сайта с помощью Wayfinder.

Элементы списка представляют собой следующий вид:

<ul>

<li><a></a></li>

<li class=last><a class=last></a></li>

</ul>

Вызов wf:

[[Wayfinder? &startId=`10` &outerTpl=`topMenuContainerWrapper` rowTpl=`topMenuContainerRow` &outerClass=`sub`]]

Текст topMenuContainerRow:

<li[+wf.classes+]><a href="[+wf.link+]">[+wf.linktext+]</a>[+wf.wrapper+]</li>

Вопрос: WF автоматически присваивает класс last последнему li, а вот как назначить класс last элементу <a> в последней строке списка?

PS Пожалуйста, не нужно называть тавтологией <li class=last><a class=last>..., эта структура необходима для JS.

Борец за чистоту Интернета.
ДП
На сайте с 23.11.2009
Offline
203
#1

я, конечно. не спец по modx, но вот так не получется7


<li[+wf.classes+]><a href="[+wf.link+]"[+wf.classes+]>[+wf.linktext+]</a>[+wf.wrapper+]</li>

?

28
На сайте с 31.10.2009
Offline
116
#2
Дикий пионер:
я, конечно. не спец по modx, но вот так не получется7

<li[+wf.classes+]><a href="[+wf.link+]"[+wf.classes+]>[+wf.linktext+]</a>[+wf.wrapper+]</li>

?

Этот способ не подходит, так как в этом случае для каждого <a> генерируется тот же класс, что и для <li>, то есть появляются ненужные <a class=active> и др.

Конечно, этот способ работать будет, но это очень, Очень мусорный способ.

ДП
На сайте с 23.11.2009
Offline
203
#3

Тогда я не вижу другого пути - или модифицировать ваш js (или другим js ставить нужный класс <a/>) или модифицирровать wayfinder - чтобы он определенный плейсхолдер писал только class="last"

Хотя может у него и есть такой, но судя по тому, что вопрос вы задаете - такого нет.

28
На сайте с 31.10.2009
Offline
116
#4
Дикий пионер:
Тогда я не вижу другого пути - или модифицировать ваш js (или другим js ставить нужный класс <a/>) или модифицирровать wayfinder - чтобы он определенный плейсхолдер писал только class="last"
Хотя может у него и есть такой, но судя по тому, что вопрос вы задаете - такого нет.

Да, похоже придётся заниматься МОДх изнутри.

Кое-что получилось, но только наполовину.

yet_warm
На сайте с 26.05.2007
Offline
129
#5
2038:
Этот способ не подходит, так как в этом случае для каждого <a> генерируется тот же класс, что и для <li>, то есть появляются ненужные <a class=active> и др.

Конечно, этот способ работать будет, но это очень, Очень мусорный способ.

Как вариант, использовать PHx, типа такого работает:

<a [+phx:if=`[+wf.classnames+]`:is=`last`:then=`[+wf.classes+]`+] href="[+wf.link+]" title="[+wf.title+]">
Многие хотят попасть в рай, мало кто хочет для этого умирать.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий