Настроил между материалами связь node reference с помощью hs_nodereference. При сохранении пункта он сохраняет только ссылку на последний материал. Например при создании материала типа сотрудник: Предприятие -> Отдел -> Сотрудник сохраняется только ссылка на конкретный отдел.
При просмотре во вьюс сотрудников он отображает либо всех сотрудников всех предприятий, либо только сотрудников конкретного отдела определённого предприятия. Нужно отобразить списком всех сотрудников определённого предприятия, независимо от отдела которому они принадлежат. При выборе во вьюс конкретного предприятия с помощью фильтрации (фильтр hs_nodereference), он не отображает ни одного сотрудника, потому что нет связи сотрудника с предприятием, есть только связь с конкретным отделом. Нужно связать сотрудника как с отделом, так и с предприятием. Делать это отдельными полями не целесообразно, так как во первых пропадает суть иерархического выбора связуемого материала, а во вторых нужные данные уже указываются при выборе иерархии. Их нужно только сохранить. Есть одно решение: при указании связи сделать поле в несколько значений (неограничено или определённого количества). Но при выборе ссылки на материал, он дублирует сохраняемую ссылку. Т.е. если выбрать Отдел сотрудника, то он запишется в базу с указанным количеством полей, но все поля будут ссылаться на отдел. Если в базе вручную подправить значени ссk поля, которое отвечает за node reference на ссылку с предприятием и оставить другое поле со связью на отдел, то всё работает как надо. Сотрудник связан как с отделом, так и с предприятием.