Drupal 8, Нода в нескольких меню

Главные вкладки

Аватар пользователя bbladeandsoul bbladeandsoul 21 декабря 2016 в 17:11

Здравствуйте, задача простая:

Меню1:
-Категория меню1
--Категория меню1

Меню2
-Категория меню2
--Категория меню2

Так вот - нужно чтобы нода "Материал1" входила и в Меню1 и в Меню2.

Искал похожие:
http://drupal.ru/node/126795
http://drupal.ru/node/70722
http://drupal.ru/node/131276
и ещё кучу форумов.

но либо старые форумы, либо решения предлагаемые там только для Drupal'а 7, а я использую Drupal 8.

Сейчас я сделал 2 словаря таксономии и 2 меню, привязал "Taxonomy Menu" к этим 2ум меню. Также сделал Views всё нормально работает, но Breadcrumb врёт, когда по таксономии переходит на ноду и показывает синоним ноды. Sad

Вообщем - как нормальные люди делают ноду в двух меню Drupal 8 ? Smile

Комментарии

Аватар пользователя gun_dose gun_dose 22 декабря 2016 в 0:59

Вам надо, чтобы нода была пунктом меню или чтобы её можно было найти в двух выборках?

Нет слова вообщем, так пишут только ушлёпки.

Аватар пользователя bbladeandsoul bbladeandsoul 22 декабря 2016 в 15:49

Извиняюсь, плохо объясняю - ещё не до конца могу выразить что нужно в терминах Drupal'а Sad

Когда перехожу по адресу таксономии:
/glavnoe-menu/kategoria-glavnogo-menu-1
Мне нравится breadcrumb:
Нравится Breadcrumb

Когда перехожу по адресу таксономии:
/bokovoe-menu/kategoria-bokovogo-menu-1/kategoria-bokovogo-menu-2
Мне также нравится breadcrumb:
Также Нравится Breadcrumb

Однако, когда перехожу в саму ноду - Breadcrumb'а конечно же нет:
Нету =(

Вроде бы надумал два способа решения проблемы:

Сначала думал сделать два синонима на ноду, и во Views'е, ответственном за отображение страниц:
/glavnoe-menu/kategoria-glavnogo-menu-1
/bokovoe-menu/kategoria-bokovogo-menu-1/kategoria-bokovogo-menu-2
Как-нибудь создавать ссылку на нужный мне синоним ноды.

Однако, как я понял, два синонима на одну ноду - плохо для SEO. Поэтому этот способ пока не делал.

Второй способ - думал сделать Views, который выбирает по id ноды нужную и отображает её.

Т.е. примерно так:
/glavnoe-menu/kategoria-glavnogo-menu-1/2
Выбирает ноду с id 2.

Вот вопрос у меня возник - может быть оба способа не очень хорошие, а гуру делают как-то по-другому? Smile

Аватар пользователя VasyOK VasyOK 22 декабря 2016 в 16:13

Для хлебных крошек в Drupal есть отдельные модули. Не вижу их релизов под 8-ку. В последнее время крошки на views делаю. Как гуры делают не знаю, у меня только кот дома.

Аватар пользователя gun_dose gun_dose 22 декабря 2016 в 16:18

У вас сам подход к построению меню неправильный. Никто не делает ссылку с названием меню. И уж тем более не принято вытаскивать эту ссылку в хлебные крошки.

Аватар пользователя bbladeandsoul bbladeandsoul 22 декабря 2016 в 17:20

VasyOK wrote:

Для хлебных крошек в Drupal есть отдельные модули. Не вижу их релизов под 8-ку. В последнее время крошки на views делаю. Как гуры делают не знаю, у меня только кот дома.


А можно простенький пример или ссылочку, как с помощью Views можно создавать хлебные крошки? А то я не совсем понял, прошу прощения...

gun_dose wrote:

У вас сам подход к построению меню неправильный. Никто не делает ссылку с названием меню. И уж тем более не принято вытаскивать эту ссылку в хлебные крошки.


Имеете ввиду, что лучше вместо ссылки:
/glavnoe-menu/kategoria-glavnogo-menu-1
Пользоваться максимально простыми:
/kategoria-glavnogo-menu-1
?

Да я согласен - некрасиво. Использовал такие длинные, потому что есть модуль "Easy Breadcrumb" - он создаёт хлебные крошки на основе пути. Вот... пользовался... больше не буду Smile

Аватар пользователя bbladeandsoul bbladeandsoul 2 января 2017 в 19:07

На счёт меню - я вроде бы понял, что вы имеете ввиду. Это просто тестовый сайт - только 2 меню с ссылками на одну и ту же ноду. Просто, для наглядности и тренировок Smile

Сегодня я сдался:
- убрал breadcrumb из /node/*;
- в типах материалов вместо поля множественного выбора сделал поле с выпадающим списком. Одна нода в одном меню.

Идеально бы подошёл модуль для drupal'а 7:
https://www.drupal.org/project/nodesymlinks

В нём написано очень важный штуко:
All duplicate content paths are sanitized, meaning that duplicate node pages are marked with "robots noindex" metatags in the head of the node's rendered html to prevent them from being indexed by search engines.

Но для drupal 8 пока ни делалси данный модуль Sad

Таким образом, я не смог разрешить задачу... =(... Ну, то есть забабахать ноду в двух материалах не проблема и даже Breadcrumb перепилить можно, чтоб отображался как надо... Но вот получить "SEO penalty" очень бы не хотелось...

Всем спасибо! С Новым годом! Smile