9. Comparison of Breadcrumb Customizing modules
https://drupal.org/node/533448
Не многовато ли?
Drupal Meetup (Drupal Cafe) #5
10. Некоторые модули для построения
хлебных крошек
•
•
•
•
•
•
Custom Breadcrumbs
Hansel
Panels Breadcrumbs
Menu Position
Breadcrumbs by path / Drupal 8
Path Breadcrumbs
Drupal Meetup (Drupal Cafe) #5
11. Custom Breadcrumbs
• Набор предустановленных вариантов для крошек.
• Для каждого варианта свои настройки.
-
Дружественный (нода, термин, всё понятно)
Широкое покрытие разных случаев
Есть своё API
~50К установок
Drupal Meetup (Drupal Cafe) #5
12. Custom Breadcrumbs
- Не достаточно гибкий.
- 100500 галочек в настройках как
попытка гибкости.
- PHP eval is evil!
- Нет экспорта / импорта
- Нет поддержки SEO
- Кастомное API, которое надо
изучать
Drupal Meetup (Drupal Cafe) #5
13. Hansel
- Набор предустановленных
вариантов (ноды, форумы, OG, …)
- Есть экспорт
- Fun!
- Хитрая кастомная реализация.
- Для среднего пользователя — тёмный лес, для
продвинутого — недоумение.
- Последний релиз от 2011-Dec-08
Drupal Meetup (Drupal Cafe) #5
14. Menu Position
- Принцип «подцепить
что-либо в меню»
реализован отлично.
- Меню и крошки
синхронизированы.
- Прост в
использовании.
Drupal Meetup (Drupal Cafe) #5
- Для простых сайтов
- Мало настроек вывода крошек
15. Drupal 8
• Крошки не на основе меню, а на основе
пути, как в Breadcrumbs by path.
Например,
есть View по пути fruites.
Есть термин таксономии с алиасом fruites/apples.
И есть нода с алиасом fruites/apples/antonovka.
-> http://example.com/fruites/apples/antonovka:
Magic by PathBasedBreadcrumbBuilder.
А ещё есть BookBreadcrumbBuilder, TermBreadcrumbBuilder и т.д.
Drupal Meetup (Drupal Cafe) #5
17. Path Breadcrumbs
• Любой путь, любая страница
• Контексты Ctools из пути (Arguments)
• Дополнительные условия отображения (Selection Rules based на
основе Ctools Access)
• Все токены из всех контекстов (на основе Entity Token)
• Microdata / Rich snippets (SEO)
• Экспорт / Features
• Многоязычность
• Ctools API + PB API
• Кеширование
•
Всякие плюшки (Home link, delimiter, truncate/transliterate)
Drupal Meetup (Drupal Cafe) #5
18. Path Breadcrumbs
- Сложный для не-разработчиков :(
- Какие пути? Какие контексты? Вы о чём вообще?
Давайте попробуем исправить ситуацию с помощью
демо.
+
Drupal Meetup (Drupal Cafe) #5
19. Path Breadcrumbs. Под капотом.
On Page Alter
PB Core
current_path()
Cacheable
Search I
(Pattern)
Search ||
(Path, Rules)
Не найдено
Ничего не
делать.
Не найдено
найдено
Построение навигационной
цепочки
drupal_set_breadcrumb()
Drupal Meetup (Drupal Cafe) #5
20. Path Breadcrumbs. Планы.
• Добавить необязательные контексты, как у Page
Manager: /my_view/%arg/!optional_arg
• Advanced Forum / Book
• Relationships (Связи, как в Ctool Access Rulesets)
• Подсказка системного пути при попытке ввода алиаса
• Багфиксы
• Документация / Популяризация
• Тесты, тесты, тесты!
• Drupal 8?
Drupal Meetup (Drupal Cafe) #5