当字段> 1时,drupal块可见性0

时间:2014-06-04 10:00:52

标签: php drupal drupal-7 block

我的内容类型event包含一个名为number_vip_pass的字段。一个事件有20个vip传递,当有人拿一个(通过规则)时,vip传递的数量减少。 问题是,实际上,即使number_vip_pass = 0,用户也可以通过VIP传递。它使该字段的值变为负值。

我想隐藏块(称为vip_pass),允许人们在number_vip_pass < 1时通过,并且我发现您可以使用&#39;显示是否隐藏它以下PHP代码返回TRUE&#39;复选框。

我的问题是:我应该在那里添加什么PHP代码?我尝试了不同的方法来编写这个脚本,但无法找到答案。我不知道如何让字段在if语句中将其与1进行比较。

这是我的代码:

if(arg(0) == 'node')
{
  $nid = arg(1);
  $node = node_load(array('nid' => $nid));
  if ($node->field_number_vip_pass < 1)
  {
     return FALSE;
  }
  else
  {
     return TRUE;
  }
}

度过愉快的一天=)

好的,所以我在网上找到了答案:

$node  = menu_get_object();

return (isset($node->field_number_vip_pass[LANGUAGE_NONE][0]['value'])) ? $node->field_nbre_pass_vip[LANGUAGE_NONE][0]['value'] : FALSE;

我不知道为什么,我不知道怎么做,但这很有效。

1 个答案:

答案 0 :(得分:1)

您可能需要将代码更改为

if (count($node->field_number_vip_pass[LANGUAGE_NONE]) < 1)
{
   return FALSE;
}