如何在视图中显示图像场图像的数量?

时间:2012-05-13 20:52:45

标签: facebook drupal drupal-6 drupal-views

我想在视图字段或视图tpl.php中显示上传到图像字段的图像数量。我怎样才能做到这一点?我的图像域称为boatimages。我尝试了这个,但它出现为0,而不是正确的数字:< ? php打印计数($ fields-> field_boatimages)?>

2 个答案:

答案 0 :(得分:0)

确认。我不认为count()就是这样的。

为什么不使用Views执行此操作?看一下Arguments>设置,你会看到'显示记录计数',这似乎是你需要的所有。

答案 1 :(得分:0)

我的建议是安装devel模块并使用函数dpm打印变量,如果你想知道结构(print_r()也可以工作)。如果count不起作用,那是因为你可能正在使用错误的数据。

或者,您可以只查询数据库中的字段。我会为你提供drupal 7的说明,但是drupal 6应该是类似的。

检查表field_data_field_boatimages。了解如何存储与单个entity_id相关的图像列表

然后执行此查询

SELECT COUNT(*) FROM `field_data_field_boatimages` WHERE entity_id = ###

其中###是您想要知道的entity_id。如果你的页面中有arg(0)== node,你可以通过查找arg(1)来获得它。

现在你只需要使用php power来打印thar结果

$query = SELECT COUNT(*) FROM `field_data_field_boatimages` WHERE entity_id = :eid
$result = db_query($query, array(':eid', $nid))->fetchField();
echo $result;

Drupal 6非常相似。表名和查询语法略有不同。例如,使用db_result而不是fetchField()

无论如何祝你好运!