Этот ответ работает в Views версии 2 или выше. Для начала необходимо установить приложение Views (http://drupal.org/project/views_attach). Пожалуйста, прочитайте о приложении View, прежде чем продолжить. Вложение просмотров лучше всего объясняется этим видео http://mustardseedmedia.com/podcast/episode37
Теперь перейдем к просмотру вложений. Пожалуйста, включите модуль представления просмотров, прежде чем продолжить. По существу, Views attach
присоединяет представление в конце узла. В нашем случае, на наш взгляд, будет список других статей с таким же термином.
Нам, по сути, нужно будет «передать» таксономический термин узла в представление. Пусть имя вашего словаря будет называться MyVocab
.
Шаги, чтобы сделать представление.
- Позволяет вызвать представление
display_other_articles_with_same_taxonomy
.
- Добавить отображение типа
Node Content
(доступно после включения просмотра видов). Это отображение, подобное отображению блоков и страниц, но со специальной возможностью присоединения к узлу.
Выполните следующие настройки в Node Content Display
Node content settings
Node types: [select the content types you are interested in seeing the list of nodes with same taxonomy term]
Build modes: Teaser, Full node
Arguments: token
Show title: No
Вы должны выбрать Use tokens from the node the view is attached to
в разделе Аргументы. Пусть токен будет [term-id]
. Это "ID термина верхней таксономии" . Это очень важно!! По сути, вы будете передавать термин таксономии узла из MyVocab
(см. http://groups.drupal.org/node/11788#comment-38332). Если он имеет наименьший вес, словарь таксономии будет первым словарем в разделе таксономии формы редактирования вашего узла Добавить аргумент Taxonomy: Term Id
.
Добавьте интересующие вас поля, например, Node: Title
. Убедитесь, что Node: Title
превращен в гиперссылку, отметив Link this field to its Node
Так что это представление будет делать:
- Возьмите термин таксономии из словаря
MyVocab
в узле, который в данный момент просматривается
- Передать это в качестве аргумента представлению
display_other_articles_with_same_taxonomy
- Список всех узлов, которые имеют такой же термин таксономии, что и отображаемый узел.
Вот и все!
Если вы используете Views 3 (в настоящий момент в alpha3 на момент написания) и , вам нужен блок (сейчас статьи имеют одинаковый термин таксономии в конце тела узла), вы можете сделать это следующим образом:
- Забудьте о представлениях прикрепите ... его не требуется
- Добавить вид блока. Он должен содержать тот же аргумент, поля и фильтры, что и приведенные выше инструкции для дисплея
Node Content
.
- Вам нужно немного изменить настройки аргумента
Taxononomy: Term Id
: в Action to take if argument is not present:
выберите [x] Provide Default Argument
. Выберите [x] Taxonomy Term ID from URL
. Теперь убедитесь, что [] Load default argument from term page
не выбран, [x] Load default argument from node page, thats good for related taxonomy blocks.
Также [x]Limit terms by vocabulary
и выберите словарь Series
.
- Убедитесь, что вы назвали блок и поместили его в соответствующий регион.
Примечание: Этот ответ является подмножеством ответа, который я предоставил на Как просто показать блок NodeQueue на включенных узлах? В этом сценарии требовалось, чтобы соответствующие статьи были явно выбраны и перечислены в определенном порядке. Он немного сложнее и использует Nodequeues, которые нам здесь вообще не нужны.