dashan 提交于
论坛:
Views模块是Drupal最强大的模块,没有一个网站不使用该模块。但单纯利用该模块还是有一定的局限性,有什么模块让Views发挥最强大的威力呢?有!它就是Views PHP,有了它你就能任意摆布输出的内容,添加css?更换DOM?编写HTML?甚至添加javascript?没问题!!
强大的让人发指的灵活性
如果使用过Views,当你输出某些内容时想添加CSS或者编排HTML,你一定会相当苦恼。因为输出都是固定的,内容都是含有固定的HTML包裹,修改不仅复杂难操作(甚至无解),效率相当低!但有了Views PHP之后,所有的输出内容都由PHP来处理,全如我想输出页面标题:<?php echo $data->title; ?>,没错,就这一句!如果想添加一个css呢?这样:<a href="" class="css"><?php echo $data->title; ?></a>,是不是非常熟悉呀?哈哈。妈妈以后再也不用担心排版问题了。
Views PHP模块允许管理员在Views 中添加一个PHP 代码的自定义字段, 通常可以用于计算字段间计算。比如将第一个字段加上第二个字段,或者你需要添加一个block到你的字段中. 再或者你需要判断登陆用户和没有登陆的用户显示不同的信息
PHP字段支持
- 区域: header/footer/empty
- 字段
- 过滤
- 排序
这边有两个字段Value Code和Output Code很容易混淆,这里解释一下
Output Code是内容输出才做的渲染
Value Code 是当其它字段调用此字段时的返回值。也就是此字段的值
我这边加一段Title判断的代码
这里还有一个Output Code, 内容渲染输出。 这边我也进行判断给一些加粗的效果
我的Views 输出结果
输出例句(可以通过devel模块查看相关的对象):
echo '<a class="img" href="'.$data->field_field_link['0']['raw']['value'].'"><img src="'.file_create_url($data->field_field_image['0']['raw']['uri']).'" alt="" /></a><div class="title">'.$data->node_title.'</div>';
$nodeurl = url('node/'. $data->nid);
dpm($data)
- 登录以发表评论