форум общения русскоязычных пользователей CMS Текстпаттерн
Вы не зашли.
Проблема с active в меню.
Главная страница это секция: Адам (т. е. здесь не отображаются статьи со всех секций).
Все работает правильно, но если открыть любую статью секции 'Адам', то на странице полной статьи active вкладки меню исчезает???
В др. секциях такой проблемы нет.
Меню:
<txp:section_list wraptag="" break="" include_default="1" default_title="Адам" exclude="Адам" sort="page" >
<li<txp:if_section name='<txp:section />'> class="active" </txp:if_section>>
<txp:section title="1" link="1" />
</li>
</txp:section_list>
т. е.
include_default="1" - Отображение главной страницы.
default_title="Адам" - Имя главной страницы.
exclude="Адам" - не отображать в меню секцию Адам(это не главная страница)
...
Так как секция Адам не отображается в меню, а отображается Главная страница, которая называется Адам.
То понятно, что когда статья(секции Адам) открыта полностью, Главная страница Адам не будет Active.
Как быть, в такой ситуации?
Отредактированно mbrume (30-03-2011 03:10:09)
Неактивен
В атрибуте exclude надо указывать не заголовок секции, а ее название - оно всегда латиницей написано.
Поведение же вы описали логичное:
1. Когда вы на главной, то у вас секция default
2. Когда вы открываете ссылку со статьей из секции Адам, то т.к. section_list выводит список секций без секции "Адам", то активного пукнта меню нет. Пункт меню, который вы обозвали "Адам" исопльзуя deadult_title="Адам" на самом деле является секцией default.
3. Для решения, скорее всего, надо будет использовать плагин smd_if и проверять сразу несколько условий - что текущая секция статьи зовется "adam" и то, что проверяется пункт меню секции default.
Неактивен
Спасибо the_ghost
James написал:
В атрибуте exclude надо указывать не заголовок секции, а ее название - оно всегда латиницей написано.
Да, это я просто здесь набирал, ошибся.
smd_if v0.9
Но, что-то у меня не получается (написать условие)?
Отредактированно mbrume (30-03-2011 22:23:36)
Неактивен
Хм...
у меня навигация подобная,
<txp:section_list wraptag="" break="ul" include_default="1" default_title="Гитара" exclude="guitar" >
<li<txp:if_section name='<txp:section />'> class="active" </txp:if_section>>
<txp:section title="1" link="1" /></li>
</txp:section_list>
оказывается active на Главной страние не работает, когда открыта статья полностью.
Неактивен
Что-то я с этим плагином никак не могу совладать.
Кто поможет (50р. yandex money))))))))в виде жеста, больше нету.
Отредактированно mbrume (31-03-2011 22:41:36)
Неактивен
Я задал вопрос ТУТ, на своем идеальном)) английском,
но что-то я не понял ответ, или ответ не верный, так как у меня не работает.
?
Неактивен
Отредактированно gbono (01-04-2011 23:49:44)
Неактивен
В общем, что у меня не получается сделать в Textpattern:
Нужно создать меню сайта.
При открытии сайта www.site.com должна открываться секция Столы (не так ~.com/stoli, а здесь просто ~.com)
т. е. меню не должно иметь Главной страницы(где выводятся статьи со всех секций)
Такой способ не катит http://txptips.com/simple-navigation-me … tive-class
Хочется сделать на основе section list
Мое не правильно работающее меню:
<txp:section_list wraptag="" break="" include_default="1" default_title="Адам" exclude="Адам" sort="page" >
<li<txp:if_section name='<txp:section />'> class="active" </txp:if_section>>
<txp:section title="1" link="1" />
</li>
</txp:section_list>
?
Отредактированно mbrume (02-04-2011 08:02:15)
Неактивен
Если в админке сайта сделать вывод на главную только статей из секции "Столы"? Там в настройке каждой секции есть "На главную - Да\Нет". Выставьте всем секциям "Нет", а столам "Да". Потом переименуйте в меню "Главную" в "Столы".
Отредактированно Unseen (04-04-2011 17:21:26)
Неактивен
Вот не читаете Вы первый пост.
Я так сделал, все работает(отображение только одной секции на главной и default_title="adam")
Так как, когда мы как бы превращаем главную страницу в секцию.
Когда мы открываем полную статью находясь на главной странице(как-бы секции), происходит открытие полной статьи и переход к секции которой эта статья принадлежит. А так как эта секция у нас скрыта(а вместо нее гл. страница), то active в меню не отображается.
Это как Вы понимаете, происходит только на Гл. странице(как бы секции). Проблема в active для гл. страницы.
Как решить проблему? (т. е. чтобы active была Главная страница)?
Отредактированно mbrume (04-04-2011 19:36:13)
Неактивен
Честно говоря я немного запутался с вашей постановкой задачи.
1. Вам необходимо, чтобы при заходе на главную, пункту "Столы" был назначен класс active?
2. При клике на статью на главной, вы переходите в секцию статьи, и там необходимо чтобы у текущей секции был назначен класс active?
Скажите какой именно из пунктов необходимо реализовать.
Отредактированно Unseen (05-04-2011 16:04:14)
Неактивен
Перечитав еще раз подумал, что судя по всему вам надо следующее:
<txp:if_section name='default'> <txp:section_list include_default="1" default_title="Адам" exclude="Адам" sort="page" > <li<txp:if_section name='<txp:section />'> class="active" </txp:if_section>><txp:section title="1" link="1"/></li> </txp:section_list> <txp:else/> <txp:section_list include_default="0" sort="page" > <li<txp:if_section name='<txp:section />'> class="active" </txp:if_section>><txp:section title="1" link="1"/></li> </txp:section_list> </txp:if_section>
Неактивен
Unseen, какой же ты молодец).
50р. твои:-))), скажи только номер yandex money.
Неактивен