EVA 为内容添加视图字段来显示相关内容的列表

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

我们可以使用视图创建一个内容列表,然后再把这个内容列表做为内容的一个字段显示在内容上。

这里我们要用到一个叫做 EVA 的模块,EVA 是 Entity Views Attachment 的简称,翻译过来就是实体视图附件的意思。你可以创建 EVA 类型的视图显示,这种视图显示可以作为字段,附加到内容、用户、评论或者其它的实体上。

http://drupal.org/project/eva … 在 EVA 模块的页面,复制一下模块的下载地址。

回到 Drupal ,打开 模块 ,安装新的模块… 粘贴 … 安装 … 勾选 EVA ,保存设置…

下面我们来创建一个视图,视图里显示与电影内容相关的人物,再把这个视图再附加到电影内容上显示出来。

打开 结构,视图, 点击 添加视图 …

输入 people … 点击编辑,再回来修改一下视图的标签,人物 … 显示 内容,内容的类型 选择 人物,排序 选择 不排序 …

去掉 生成一个页面 这个选项… 然后点击 继续编辑 …

下面我们为这个视图添加一个显示,点击 添加,选择 添加 EVA Field …

修改下显示的名称… 演员表 … 显示的 格式 这里,我们选择 表格 …

然后我们再为这个显示添加几个字段… 现在有一个内容标题字段,我们再添加一个显示人物照片的字段… 点击 字段 右边的 添加 … 选择 内容: 照片,这个字段就是 人物 这个内容类型里上传人物照片的字段。

去掉 生成标签,图像样式 选择 pager ,图像链接到 选择 内容 … 点击 应用 …

下面我们再配置一下实体内容的设置。实体类型… 就是这个 EVA 视图附加到的那个实体类型,我们想把它附加到 电影 内容上,所以实体的类型就应该是 节点, 点击 应用 …

再设置一下捆绑,捆绑就是你想把这个视图附加到哪个内容类型上,选择 电影 … 点击 应用 …

点击 保存 … 然后在新标签里打开 结构 (!新窗口),内容类型,点击 电影 内容类型的 管理显示 …

在显示的字段列表里,有一个 EVA:人物 - 演员表 ,这个字段显示的内容就是我们创建的 EVA 视图。

回到前台页面… 在电影内容里,你可以看到一个人物的列表,里面显示了人物的照片还有名字。

现在的问题是,这个列表里会显示所有的人物内容。我们只想显示与当前的电影内容相关的人物内容,也就是我们使用 Relation add 创建关系的那些人物内容 …

筛选电影内容

回到这个 EVA 视图的编辑界面…

首先,我们要添加一个 关联 …

这里我们找到 内容: Relation: 相关人物或作品 (node -> node) ,关系的类型是 相关人物或作品,然后是 node 和 node 也就是文章和文章之间的关系。

修改一下 应用的范围 ,点击 应用 …

然后我们需要使用这个关联,再去添加一个 上下文过滤器… 选择 内容: Nid ,修改应用范围… 点击 应用 …

关联这里,我们选择 相关人物或作品… 再提供一个默认的过滤器的值… 类型 选择 URL 上的内容 ID … 点击 应用 …

然后点击 保存…

我们再回到前台页面,打开一个电影内容(!蝙蝠侠:黑暗骑士崛起),现在,在这个 演员表 里,就只会显示出与当前这部电影相关的演员了。

为人物添加相关电影的字段

使用同样的方法,我们可以再去为 人物 内容添加一个相关的电影作品的字段。下面我们快速的演示一下…

打开 结构,视图,编辑一下 电影 这个视图… 点击 添加 ,选择 添加EVA:Field, 修改视图显示名称 … 人物相关作品

添加一个电影海报字段,点击 添加 … 选择 电影:海报… 修改应用范围 … 应用 … 图像样式 选择 poster ,图像链接到 选择 内容 …

点击 应用 ,调整一下字段的显示顺序 …

再配置一下 实体内容的设置,实体类型 是 节点 … 捆绑 到 人物 这个内容类型上 …

添加一个关联… 选择 内容: Relation: 相关人物或作品 (node -> node), 修改应用范围 … 应用

再添加一个上下文过滤器,选择 内容:Nid ,关联 选择 相关人物或作品…

提供一个默认值,类型选择 URL 上的内容 ID,应用 … 保存 …

打开一个已经创建和人物创建了关系的电影 (!蝙蝠侠:黑暗骑士崛起),然后再打开和这部电影有关系的人物内容…

在这个人物的内容上,你会看到跟这个人物有关系的电影内容。

EVA 为内容添加视图字段来显示相关内容的列表《 Drupal 7 基础(下) 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点