Але іноді навіть такого зв'язку - замало. Хочеться чогось ще більш грандіозного.
І тоді на допомогу сайтостроітеля приходить абсолютно приголомшливий модуль Entity Reference.
Він розвивається більше, ніж раніше описаний Node reference. Ідея модуля Entity Reference (що в перекладі означає «Зв'язок між сутностями») полягає в тому, що з цим можна встановлювати не тільки між нодамі (документами, сторінками), але і іншими «сутностями» - припустимо, Views'амі, панелями, файлами ... треба ще гарненько почухати потилицю, щоб придумати, з чим ще можна пов'язувати документи.
Налаштування модуля Entity Reference
Викачуємо (вище вказані посилання), встановлюємо, включаємо - стандартно.
В налаштуваннях ці модулі знову ж таки не потребують, як і в разі використання модуля Node reference. А все настройки робляться теж в типі матеріалу.
Тільки тепер в типі матеріалу створюється додаткове поле (або кілька полів), тип якого: Entity Reference. Віджет: Автодоповнення.
Потім в «глибоких» настройках на наступному екрані потрібно вказати, з якими типами матеріалів може зв'язуватися цей тип матеріалу, скільки може бути зв'язків, і інші більш «тонкі» настройки.
Досить режиму Simply (by bundle). А ви можете додатково спробувати режим Views.
До сих пір підключення модуля Entity Reference було схоже на підключення більш простого Node reference.
Але тепер ... я покажу цікаву фішку, якої немає в модулі Node reference.
Приклади використання Entity Reference
Модуль Entity Reference я використовую на своєму сайті афоризмів.
Задумка була дуже-дуже давня. І цю задумку я колись навіть стала втілювати в окремому невеликому проекті. Але потім ... благополучно його закинула - тому що не вистачало сил, часу, енергії. І найголовніше - я розуміла, що сам технічний підхід до виконання цієї задумки є невірним.
І ось тільки тепер ... - після перенесення сайту афоризмів на Друпал я потихеньку буду правильно втілювати цю задумку.
Тепер цієї задумкою вже можна поділитися, звичайно. І приклади ви побачите нижче.
Є такий вислів:
На кожну сентенцію є сентенція з протилежним змістом. Прислів'я треба цитувати парами, по одній з ними усе гаразд лише наполовину.
Але насправді, мудреці, прорікав афоризми, не тільки сперечаються між собою; іноді вони погоджуються або доповнюють ідеї попереднього «оратора», іноді уточнюють, пропонують інший ракурс ...
Ці бесіди через століття легше побачити на конкретних прикладах.
Приклад №1: першоджерело та розвиток ідеї
Ага! Я ж попереджала, що буде цікаво.
В такому - повному - вигляді зв'язку між документами відображаються саме за допомогою модуля Entity Reference плюс «примочки» до нього Entity Reference Multiple Display.
Ремарка: таких «пар» або навіть «ланцюжків» афоризмів на моєму сайті досить багато.
Залишилося уточнити один важливий нюанс.
Відображення зв'язків з допомогою Entity Reference
А саме - з приводу відображення другого пов'язаного документа.
(У модулі Node reference додаткових налаштувань відображення немає).
Заходимо: Тип контенту -> Афоризм -> Відображення полів
У відображенні «Анонс» все додаткові поля для зв'язків робимо прихованими (клікабельно!):
А в відображенні «Вміст повністю» виводимо додаткові «сполучні» поля як анонс: Rendered as Анонс:
Це важливо в тих випадках, коли дві Ноди будуть посилатися одна на іншу, тобто - якщо зв'язку будуть взаємними. двонаправленими. Тоді треба обов'язково вибрати АНОНС.
Якщо в повному матеріалі виводити «пов'язаний» другий документ теж повний, - то може вийти нескінченний цикл. І тоді на цих сторінках - отримаєте помилки.
Отже, в даному уроці ми детально розібрали, як використовувати Entity Reference. як за допомогою цього модуля не тільки зв'язати документи між собою, а й голосно відобразити ці зв'язки.
На завершення уроку треба ще додати, що до модуля Entity Reference є ще багато інших додаткових модулів-примочок, які дозволяють веб-майстру пов'язувати документи і відображати ці зв'язки іншими незвичайними способами.
Користуйтеся! - і отримуйте задоволення.
Уроки по зв'язках в друпалі:
2. Дивовижна зв'язок: Використання Entity Reference - цей запис.