Відповіді:
Ctools
У Ctools є підмодуль під назвою "Менеджер сторінок". Цей модуль, за своєю суттю, є графічним інтерфейсом користувача до кука_меню . Це дозволяє або створювати нові шляхи в системі, або перебирати деякі з тих, які надає Core.
Менеджер сторінок
Після того як менеджер сторінки керує для вас контуром, він може робити кілька різних речей з ним. Без коробки він може надавати переадресацію для вас. Одним із поширених випадків використання для цього є заборона доступу до вузлів, у яких відсутня належна тематизація, оскільки вони не призначені для перегляду самостійно, таких як "Факти" або "Вузоли зображень". Інша - перенаправити з виду терміна на пошук Solr того самого терміна.
Однією з головних переваг Менеджера сторінок є те, що він вводить спосіб поводження з "Контекстом", не плутати його з модулем Контекст . Тут є те, що Пейнс, який є "трохи розумнішими блоками", може оголосити свою залежність від системи, і вони мають фактичні аргументи (так звані "контексти"), передані в інжекційному режимі залежності .
Для тих, хто не знає DI, але знайомий з Drupal, це, наприклад, дозволяє вам ніколи більше не використовувати menu_get_object, щоб отримати "Цей єдиний вузол, на який посилається шлях до меню". Що робити, якщо на шляху є більше одного вузла? Або якщо ви дійсно хочете базувати блок на вузлі з посилання на сутність? Це не викликає проблем з диспетчером сторінок, роблячи всі блоки (панелі) набагато гнучкішими та повторно використаними.
Панелі
Однак найпоширенішим випадком використання є передача макету та надання контуру панелям . Панелі надають інструменти для визначення макетів або в коді, або безпосередньо в браузері, і дозволяють розміщувати вміст безпосередньо в браузері.
Висновок
Обидва ці модулі дуже потужні та відносно погано задокументовані, що призвело до того, що багато людей розчаруються у них. Розуміння того, як використовувати їх, проте , добре стоїть, якщо ви будуєте більше сайт, тим більше , що їх підхід до роботи з «сторінки», а також розташування, зовнішній вигляд , як вони збираються в Drupal 8 ядро, люб'язно EclipseGC «s ініціативи СОСНИ . Відповідний проект пісочниці
Подальше читання
Приклади інших цікавих речей, які можна зробити за допомогою цих інструментів:
$page_data = page_manager_get_current_page()
де є гроші, особливо$page_data['handler']
В Drupal 7, Page Manager був основою модуля Панелі .
" Менеджер навчальних сторінок " - це цікавий (і дивовижний) набір відео. Вони містять різні теми, пов'язані з модулем Панелі . Ось підсумок всього набору відео на цю тему (цитата за посиланням вище):
- Менеджер сторінок дозволяє гнучко та послідовно збирати та керувати контекстною інформацією. Це важлива частина створення інфраструктури на веб-сайтах Drupal, і ви повинні знати, як користуватися цим модулем.
- Серіал екранізації орієнтований на досвідчених розробників Drupal.
- Епізоди 1, 2 та 3 представляють основні поняття, такі як користувацькі сторінки, варіанти, правила вибору та (певною мірою) контекстуальні об'єкти.
- Епізоди 4, 5, 6 і 7 розповідають про панелі з акцентом на інтеграцію поглядів, а також деякі слова на ефективне кешування.
- Епізоди 8 і 9 про контроль доступу, пункти меню та не менш відомий, але дуже корисний модуль контекстуального адміністрування.
- Епізоди 10 та 11 розповідають більше про використання контекстних об'єктів у Менеджері сторінки, включаючи використання представлень як контексту. Це, imho, де реальна сила в Менеджері сторінки.
- Епізоди 12 та 13 збирають різні біти та фрагменти, наприклад, як користуватися панелями, щоб легко переставити форму редагування вузла, налаштування імпорту / експорту та деякі додаткові модулі, які можна використовувати з диспетчером сторінок.
Див. Пояснення панелей: Огляд для Drupal Developers, щоб отримати ще одне чудове пояснення щодо модуля "Панелі".
У Drupal 8 Менеджер сторінок став відокремленим модулем, тоді як раніше (до Drupal 7) він був частиною модуля CTools . Ось ще кілька цитат зі сторінки (пов'язаної з D8):
Він підтримує створення нових сторінок і дозволяє розміщувати блоки всередині цієї сторінки.
Як і Drupal 7's Page Manager, він пропонує концепцію "варіантів сторінок", кожен з яких має власні умови вибору.
Крім того, він може бути використаний для перейому на існуючу сторінку, наприклад переопределення / node /%, щоб змінити те, що відображається під час перегляду вузла.
Вона використовує ядро
Conditions
,Context
іBlocks
API - інтерфейси для досягнення цієї мети .