Есть модуль easy_breadcrumb. Им можно решить большинство задач. Если нужна какая-то сложная логика, придётся писать свой код.
А вообще, для справки, Drupal строит крошки на основании алиасов путей. Например, есть сайт, на нём есть страница новостей, страницы категорий новостей и страницы самих статей. И у статьи алиас /news/it/some-article В таком случае крошки будут "Главная - Новости - IT - Статья". Но лишь в том случае, если URL-ы страниц будут такими:
Главная - /
Новости - /news
IT - /news/it
Статья - /news/it/some-article
Если у статьи будет алиас /news/some-article, то фрагмент IT будет пропущен. Либо если категория IT имеет урл, отличный от /news/it (например /news/categories/it), то фрагмент с категорией также не попадёт в крошки.
То есть, логика такая: берётся путь, разбивается на фрагменты, разделённые слэшем, а затем слева направо фрагменты последовательно снова составляются в цепочку, если цепочка ведёт на существующую страницу, то этот урл добавляется в крошки, если нет, то нет.
Комментарии
Есть модуль easy_breadcrumb. Им можно решить большинство задач. Если нужна какая-то сложная логика, придётся писать свой код.
А вообще, для справки, Drupal строит крошки на основании алиасов путей. Например, есть сайт, на нём есть страница новостей, страницы категорий новостей и страницы самих статей. И у статьи алиас /news/it/some-article В таком случае крошки будут "Главная - Новости - IT - Статья". Но лишь в том случае, если URL-ы страниц будут такими:
Если у статьи будет алиас /news/some-article, то фрагмент IT будет пропущен. Либо если категория IT имеет урл, отличный от /news/it (например /news/categories/it), то фрагмент с категорией также не попадёт в крошки.
То есть, логика такая: берётся путь, разбивается на фрагменты, разделённые слэшем, а затем слева направо фрагменты последовательно снова составляются в цепочку, если цепочка ведёт на существующую страницу, то этот урл добавляется в крошки, если нет, то нет.