UMIhelp

Разработка сайта на UMI.CMS => Шаблоны XSLT => Тема начата: moonstk от 25 Марта 2016, 17:38:23

Название: Меню с неактивными ссылками
Отправлено: moonstk от 25 Марта 2016, 17:38:23
Понадобился совет знатоков  :).
Задача - сделать двухуровневое меню, если есть дочерние страницы - родитель становится якорем (по принципу навбара бутстрапа http://getbootstrap.com/components/#navbar). С меню проблем нет, но в бредкрампе эта ссылка остается активной. Соответственно, можно перейти на пустую страницу.
В адресе ссылки подставить # невозможно.

У меня есть идея, добавить чекбокс страницам и если он отмечен - подменять ссылку и в меню, и в бредкрампе. Но возможно, кто-то подскажет более элегантное решение?
Название: Re: Меню с неактивными ссылками
Отправлено: aghigay от 25 Марта 2016, 17:57:28
Правильно ли я понимаю, что вы, фактически, хотите скрыть какие-то из подстраниц и заставить родительскую страницу отображать их как кусок контента?

Только я не совсем понял в чем дилема? В том, что хлебные крошки отображают какие-то ссылки?
Название: Re: Меню с неактивными ссылками
Отправлено: moonstk от 25 Марта 2016, 18:15:37
Нет, не верно. Я, наверное, запутала вас ссылкой на бутстрап. Я имею в виду их реализацию дропдауна - при нажатии на ссылку не переходишь на страницу, а открывается подменю. С самим меню проблем нет. Но в бредкрампе у меня тоже отображается пункт меню, который выполняет функцию dropdown-toggle, и вот по клику на него открывается пустая страница.
А мне нужно, чтобы в бредкрампе страница показывалась, но перейти на нее было нельзя.
Название: Re: Меню с неактивными ссылками
Отправлено: e.ioffe от 26 Марта 2016, 14:57:23
Попробуйте сделать меню в модуле "Меню".

Основной пункт, при нажатии на который открывается dropdown - виртуальная страница ("Произвольная ссылка" в модуле "Меню"), в нее вложено все внутренние. Таким образом основной раздел уйдет из хлебных крошек.
Название: Re: Меню с неактивными ссылками
Отправлено: aghigay от 27 Марта 2016, 11:57:51
Или придется перехватывать события перехода по ссылке в JS. Что-то типа preventdefault onclick http://stackoverflow.com/questions/8614438/preventdefault-inside-onclick-attribute-of-a-tag
Название: Re: Меню с неактивными ссылками
Отправлено: moonstk от 01 Апреля 2016, 12:36:01
С меню решение, имхо более правильное, но мне больше подходит это
Цитировать
Что-то типа preventdefault onclick
Я в зависимости от настроек в странице меняю ссылку на "javascript:".

Еще один вопрос, теперь по поиску, с меню никак не связанный:
У меня есть страница, на которой я вывожу контент с других страниц через юсел и фотогалереи, подключенные через ссылку на дерево. Так вот в результатах поиска юсел страницы и фотогалереи они отображаются как отдельные страницы. Как-то можно заставить их отображаться на родительской странице?
Название: Re: Меню с неактивными ссылками
Отправлено: aghigay от 01 Апреля 2016, 13:15:31
Если я правильно понимаю, то самое простое решение - выключить их из поиска и переиндексировать поиск.
Название: Re: Меню с неактивными ссылками
Отправлено: moonstk от 01 Апреля 2016, 14:43:46
Я пробовала, тогда в родительской странице нет контента дочерних страниц :( там только то, что приходит из result.
В общем, опять приходится решать через костыли - якоря alt-name на страницах и подстановку родительской страницы + alt-name дочерних в ссылках в результатах поиска...

То ли я слишком мало знаю про юми (и цмс в целом), то ли все и должно решается такими необычными способами "лишь бы работало" ???
Название: Re: Меню с неактивными ссылками
Отправлено: aghigay от 01 Апреля 2016, 15:40:09
Ну может быть не стоило делать контент страницы в виде вложенных страниц? Почему не сделать поля на самой странице и не вбить все туда?
Название: Re: Меню с неактивными ссылками
Отправлено: e.ioffe от 01 Апреля 2016, 15:44:54
Цитировать
Так вот в результатах поиска юсел страницы и фотогалереи они отображаются как отдельные страницы. Как-то можно заставить их отображаться на родительской странице?

Обычно я делаю редирект с фотогалереи и фото на страницу, на которой они должны отображаться.
Название: Re: Меню с неактивными ссылками
Отправлено: moonstk от 04 Апреля 2016, 16:52:10
Ну может быть не стоило делать контент страницы в виде вложенных страниц? Почему не сделать поля на самой странице и не вбить все туда?
А как еще сделать на одной странице повторяющееся поле для множества статей (у которых нет своей отдельной страницы)?
Цитировать
Так вот в результатах поиска юсел страницы и фотогалереи они отображаются как отдельные страницы. Как-то можно заставить их отображаться на родительской странице?

Обычно я делаю редирект с фотогалереи и фото на страницу, на которой они должны отображаться.
Спасибо!
Кстати, на вики в статье про редирект опечатка http://wiki.umisoft.ru/%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B5%D0%B4%D0%B8%D1%80%D0%B5%D0%BA%D1%82%D0%B0
<xsl:variable name="redirect" select="document(concat('upage://', '/result/@pageId', '.redirect'))/udata/property/value/page/@id" />
Название: Re: Меню с неактивными ссылками
Отправлено: aghigay от 04 Апреля 2016, 17:16:39
Ну, я бы задумался о том, зачем нужно иметь (неограниченное) множество статей на одной странице, какой в этом резон и какую цель вы преследуюете. Как вариант - возможно что-то не так с архитектурным решением или логикой размещения информации? Как минимум, я вижу проблему в том, что через некоторое время к вам придет SEO и тогда будет счастье :-)