Есть два типа материалов, тип а и тип б. Тип б связан с типом а через Node Reference, возможно ли сделать так чтобы при просмотре типа а под ним выводились тизеры связанных с ним материалов типа б?
Да так и хочеться завыть почему нет панелей для шестерки!!!!! надеюсь скоро будут, а пока только можно сделать через Node Hierarchy но там в ручную нужно вьюшку задавать для каждого типа а
А можно у изображений (создается ImageField + imagecache) выводить листалку типо предыдущая и следующая?
что-то я не разобрался поставил views reference, и node reference, node reference в настройках поля предлагает выбрать какою то вьюшку и поле для передачи views каки-то аргументов, что туда надо вводить и как создать views, чтобы передать ее views reference?
views reference использовать не нужно, надо так:
1) Сделать выборку вьюсом необходимых данных с ноды типа b. При этом естественно указать фильтр по типу ноды=b (хотя можно выводить и другие данные). И самое главное добавить аргументом поле Content: Node reference из типа b примерно с такими настройками:
2) В файле node-a.tpl.php (папка темы, это файл нужно создать дублированием node.tpl.php) вставить вывод этой вьюшки:
$output = views_embed_view('viewname', $display_id = 'default', $node->nid);
print '
Возможно где-то ошибка по невнимательности или с нехваткой памяти проблемы (иногда бывает когда белый лист). Возможность использования views для двусторонней связи показана, остальное дело разработчика
dfaker
Да.. ошибка по невнимательности.. sql запрос возвращал пустое значение.. поставил display all values и все заработало. спасибо.
но это связь в одну сторону.
т.е. в материале тип1 я в поле Ссылка на материал указываю материалы тип2 и когда захожу в типа2, то там появляется вьюшка и показывает что ссылается на эту ноду.
а в типе один по умолчанию должна быть ссылка на тип2, если ее нет, то скорей всего вы отключили в настройках типа материала 1 отображение поля NODE REFERENCE
а в типе один по умолчанию должна быть ссылка на тип2, если ее нет, то скорей всего вы отключили в настройках типа материала 1 отображение поля NODE REFERENCE
все правильно.. но как теперь настроить одинаковое форматирование страницы?
размер шрифта текста ноды и вьюшки отличается.. а хочется чтобы был единый стиль.
к тому же если я добавляю материал типа2, указываю ссылки на тип1, то в тип1 появится вьюшка, а как объединить эту вьюшку и текст в ноде который ссылается на тип2? они получаются как бы разорваны на странице.
все правильно.. но как теперь настроить одинаковое форматирование страницы?
размер шрифта текста ноды и вьюшки отличается.. а хочется чтобы был единый стиль.
во вьюшке сделайте тип отображения не поля, а материал
Комментарии
да можно через panels это легко сделать, но его нет в для 6ки, поетому надо делать через сниппет
Да так и хочеться завыть почему нет панелей для шестерки!!!!! надеюсь скоро будут, а пока только можно сделать через Node Hierarchy но там в ручную нужно вьюшку задавать для каждого типа а
А можно у изображений (создается ImageField + imagecache) выводить листалку типо предыдущая и следующая?
можно с помощью js
Через views с аргументом:
http://drupal.ru/node/17028
http://drupal.ru/node/17734
удобно получается
что-то я не разобрался поставил views reference, и node reference, node reference в настройках поля предлагает выбрать какою то вьюшку и поле для передачи views каки-то аргументов, что туда надо вводить и как создать views, чтобы передать ее views reference?
views reference использовать не нужно, надо так:
1) Сделать выборку вьюсом необходимых данных с ноды типа b. При этом естественно указать фильтр по типу ноды=b (хотя можно выводить и другие данные). И самое главное добавить аргументом поле Content: Node reference из типа b примерно с такими настройками:
2) В файле node-a.tpl.php (папка темы, это файл нужно создать дублированием node.tpl.php) вставить вывод этой вьюшки:
$output = views_embed_view('viewname', $display_id = 'default', $node->nid);
print '
print($output);
print '
';
?>
тут $node->nid аргумент для вьюса
спасибо большое, еще прару скриншотов и хорошая статья бы получилась )))
не получается.. настроил views как показано, добавил в node-type.tpl.php указанный код.
при входе в ноду типа type, у меня белый лист
Возможно где-то ошибка по невнимательности или с нехваткой памяти проблемы (иногда бывает когда белый лист). Возможность использования views для двусторонней связи показана, остальное дело разработчика
dfaker
Да.. ошибка по невнимательности.. sql запрос возвращал пустое значение.. поставил display all values и все заработало. спасибо.
но это связь в одну сторону.
т.е. в материале тип1 я в поле Ссылка на материал указываю материалы тип2 и когда захожу в типа2, то там появляется вьюшка и показывает что ссылается на эту ноду.
а в типе один по умолчанию должна быть ссылка на тип2, если ее нет, то скорей всего вы отключили в настройках типа материала 1 отображение поля NODE REFERENCE
все правильно.. но как теперь настроить одинаковое форматирование страницы?
размер шрифта текста ноды и вьюшки отличается.. а хочется чтобы был единый стиль.
к тому же если я добавляю материал типа2, указываю ссылки на тип1, то в тип1 появится вьюшка, а как объединить эту вьюшку и текст в ноде который ссылается на тип2? они получаются как бы разорваны на странице.
Это вопрос темизиции, для меня он тоже не всегда прозрачен
во вьюшке сделайте тип отображения не поля, а материал
тогда он мне вывел в ноде типа2 все ноды (ПОЛНОСТЬЮ! весь текст) типа1, а мне надо только заголовки с общим названием блока.